Container Konzept
Die bevorzugte Architektur besteht aus mehreren Containern mit bewusst gewählten Namen und klar getrennten Rollen.
Rollen der Container
Abschnitt betitelt „Rollen der Container“Der dev-Container ist die eigentliche interaktive Entwicklerumgebung. Er ist als einziger Container - in der Entwicklungsumgebung dieser Guideline - ein Dev Container im Sinne des VS Code Development Container Konzepts.
VS Code verbindet sich direkt mit diesem Container und ermöglicht die Entwicklung im Container.
init-volumes
Abschnitt betitelt „init-volumes“Der init-volumes-Container ist ein technischer Hilfscontainer. Er bereitet gemeinsam genutzte Docker Volumes vor und setzt erforderliche Besitzrechte, sodass nachfolgende Container diese konsistent verwenden können.
Der deps-Container ist ausschließlich für die Installation von NPM-Dependencies zuständig. Er erhält nur den dafür notwendigen Kontext und dient dazu, den Installationsschritt vom allgemeinen Entwicklungscontainer zu trennen.
deps-update
Abschnitt betitelt „deps-update“Der deps-update-Container erweitert das deps-Container Prinzip um die Möglichkeit, projektbezogene Änderungen an Dependency-Definitionen und Lockfiles kontrolliert1 durchzuführen.
Der app-Container stellt die eigentliche Laufzeitumgebung der Anwendung bereit. Er dient nicht als allgemeine Arbeitsumgebung, sondern ausschließlich der Ausführung / Runtime der Anwendung mit den dafür notwendigen Rechten und Konfigurationsdaten.
Die ai-Container stellen separate Ausführungskontexte für AI-gestützte Entwicklung bereit.
Ziel ist es, die Nutzung von Claude Code zu ermöglichen, ohne dafür den vollständigen Entwicklerkontext des dev-Containers freizugeben.
Dabei sind die Rollen bewusst getrennt:
ai: arbeitet mit read-only eingebundenem Projektcode und eignet sich für Analyse, Planung und unterstützende Aufgaben ohne Schreibzugriff.ai-agent: arbeitet mit schreibbar eingebundenem Projektcode und ist für AI-gestützte Änderungen am Projekt vorgesehen.