Zum Inhalt springen

Dev Container Extension

Die Dev Containers Extension erweitert Visual Studio Code um die Möglichkeit, Entwicklungsumgebungen direkt in Containern zu definieren und zu nutzen.

Wie zuvor beschrieben besteht die Entwicklungsumgebung in dieser Guideline aus einem Multi-Container-Setup, wobei der dev-Container der “eigentliche” Dev Container im Sinne der VS Code Development Container Konzepts ist.

Projekte können dadurch in einer vorkonfigurierten Containerumgebung geöffnet werden, ohne dass alle benötigten Abhängigkeiten lokal auf dem Host-System installiert sein müssen.

Die VS Code Dev Container Extension liest dabei die im Projekt bereitgestellte Dev Container Konfiguration ein und erstellt bzw. startet daraus automatisch die definierte Entwicklungsumgebung in VS Code.


Dinge die Dev Container Extension automatisch macht

Abschnitt betitelt „Dinge die Dev Container Extension automatisch macht“

Git Credential Sharing soll Git im dev-Container den Zugriff auf die - bereits auf dem Host-System - konfigurierten Zugangsdaten ermöglichen, indem SSH-Agenten oder Credential Helper weitergereicht werden.

Mechanismen:

  • SSH-Agent Forwarding
  • Nutzung eines lokalen Git Credential Helpers
  • interne bzw. temporäre Socket-Weitergabe

Das VS Code Trouble-Shooting Kapitel kann dabei helfen, zu verstehen welcher Mechanismus im Setup greift.

Wenn ein SSH Agent auf dem Host läuft, dann wird dieser automatisch in den Container weitergereicht.

Beim Start des dev-Containers kopiert die Dev Container Extension die lokale ~/.gitconfig in den Container.


Dinge die Dev Container Extension nicht automatisch macht

Abschnitt betitelt „Dinge die Dev Container Extension nicht automatisch macht“

Die Extension:

  • kopiert keine privaten SSH-Keys
  • mountet ~/.ssh nicht automatisch
  • mountet .env nicht automatisch
  • mountet .git nicht pauschal separat, sondern arbeitet mit dem gemounteten Workspace bzw. Repository

Das VS Code Troubleshooting Kapitel hilft beim Prüfen der genannten Punkte.