Hinzufügen von Software zu einem vorhandenen Container
Sie machen bei der Arbeit an dem angepassten Container für Ihre Agentur gute Fortschritte. Dank der Leistungsfähigkeit von Dev Containers konnten Sie einen vorkonfigurierten Entwicklungscontainer hinzufügen, und im Rahmen der Übungen konnten Sie die Oberfläche durch die „devcontainer.json“-Datei anpassen. Aber was ist, wenn Sie Software hinzufügen möchten, die nicht über die Images oder vorkonfigurierten Entwicklungscontainer verfügbar ist?
Einführung in die Installation zusätzlicher Software
Zusätzliche Software kann beispielsweise ein weiterer Technologiestapel für Ihre Agentur sein. Sie sollten z. B. Node.js in alle Ihre Entwicklungscontainer einbinden, weil die Plattform bekanntermaßen Teil vieler Entwicklungsworkflows ist.
Wenn Sie Dev Containers ausgeführt haben: Hinzufügen von Konfigurationsdateien für Den Entwicklungscontainer wurde ihrer App ein .devcontainer Ordner hinzugefügt. Sie enthält eine devcontainer.json Datei basierend auf diesem Containerimage. Obwohl dieses Image Ihrem Team viele Optionen bietet, sollten Sie diese unter Umständen erweitern, indem Sie weitere Software installieren.
Methoden zum Installieren von Software
Software kann über das integrierte Terminal installiert werden. Die meisten Containerimages basieren auf Debian oder Ubuntu, und zur Installation neuer Pakete verwenden Sie den Befehl apt oder apt-get.
Wichtig
Bei der Installation mit apt-get muss immer zuerst apt-get update ausgeführt werden. Mit diesem Befehl wird die Liste mit Paketen und Paketrepositorys aktualisiert, sodass sich die aktuellste Liste im Zwischenspeicher befindet.
Wenn Sie jedoch Änderungen am Ordner .devcontainer vornehmen und den Container neu erstellen müssen, müssen Sie alle manuell installierten Komponenten neu installieren. Um dieses Problem zu vermeiden, können Sie, wie in der vorherigen Lektion bereits erwähnt, die Eigenschaft postCreateCommand in devcontainer.json verwenden.
Die effizienteste Methode, um Ihre Änderungen auch nach einer Neuerstellung beizubehalten, ist die Installation von Software über ein Feature.
Softwareinstallation über Features
Wie in Lektion 5 dieses Moduls erwähnt, sind „Features“ im Kontext eines Entwicklungscontainers eigenständige, gemeinsam nutzbare Einheiten des Installationscodes und der Konfiguration des Entwicklungscontainers. Der Name leitet sich von der Idee ab, dass Sie Ihrem Entwicklungscontainer durch einen entsprechenden Verweis schnell und unkompliziert zusätzliche Tool-, Runtime- oder Bibliotheksfeatures hinzufügen können, die von Ihnen oder Ihren Projektmitarbeitern genutzt werden können.
Wenn Sie den VS Code-Befehl Dev Containers: Add Dev Container Configuration Files verwenden, wird eine Liste von Skripts zum Anpassen der vorhandenen Dev-Containerkonfigurationen angezeigt, z. B. das Installieren von Git oder der Azure CLI.
Wenn Sie Ihren Container neu erstellen und erneut öffnen, sind die von Ihnen ausgewählten Features in „devcontainer.json“ verfügbar:
"features": {
"ghcr.io/devcontainers/features/azure-cli:1": {
"version": "latest"
}
}
Mithilfe des Befehls VS Code Dev Containers: Containerfeatures konfigurieren können Sie eine vorhandene Konfiguration aktualisieren.
Die Features, die in der VS Code-UI angezeigt werden, stammen jetzt aus einem zentralen Index, den Sie erkunden und zu dem Sie sogar beitragen können.
Weitere Informationen zur Funktionsweise von Features und deren Verteilung können Sie überprüfen.
In der nächsten Übung installieren Sie Node.js. Anschließend überprüfen Sie, ob Node.js im Container verfügbar ist, der gerade ausgeführt wird.