Dependency Volumes
Dependency Volumes enthalten die installierten Projektabhängigkeiten und trennen diese vom Workspace. Dadurch werden generierte Artefakte nicht im Projektverzeichnis gespeichert, können aber von mehreren Containern gemeinsam genutzt werden.
Typische Beispiele:
node_modules
Definition
Abschnitt betitelt „Definition“Dependency Volumes werden in der compose.yml explizit definiert.
compose.yml
volumes: root_node_modules:Die explizite Benennung erleichtert Wiederverwendung und verhindert zufällig generierte Volume-Namen.
Einbindung in Container
Abschnitt betitelt „Einbindung in Container“Das Volume wird an den Pfad gemountet, an dem das Projekt seine Dependencies erwartet.
compose.yml
- root_node_modules:/workspaces/security-oriented-dev-container-project/node_modulesDadurch bleiben Dependencies vom Workspace getrennt, sind aber weiterhin im Container verfügbar.
Read-write Zugriff
Abschnitt betitelt „Read-write Zugriff“Container, die Dependencies installieren oder verändern, erhalten Schreibzugriff.
compose.yml
- root_node_modules:/workspaces/security-oriented-dev-container-project/node_modulesDies betrifft typischerweise:
init-volumesdepsdeps-update
Read-only Nutzung
Abschnitt betitelt „Read-only Nutzung“Container, die Dependencies nur verwenden, erhalten read-only Zugriff.
compose.yml
- root_node_modules:/workspaces/security-oriented-dev-container-project/node_modules:roDies verhindert unbeabsichtigte Änderungen durch Runtime- oder Tool-Container.