Volumes Konzept
Neben der Trennung der Container-Rollen basiert die Architektur dieser Guideline auch auf einer klaren Trennung der Datenarten.
Rolle der Volumes
Abschnitt betitelt „Rolle der Volumes“Docker Volumes dienen als gemeinsam genutzte, aber kontrollierte Speicherbereiche zwischen Containern.
Sie ermöglichen:
- Wiederverwendung von Dependencies und Caches
- Trennung zwischen Sourcecode und generierten Artefakten
- unterschiedliche Zugriffsrechte je nach Containerrolle
Mehrere Container können das selbe Volume nutzen, jedoch mit unterschiedlichen Zugriffsrechten. Nicht jeder Container benötigt Zugriff auf alle Datenbereiche.
Trennung der Daten
Abschnitt betitelt „Trennung der Daten“Der Workspace enthält ausschließlich den Sourcecode und liegt im Projektverzeichnis auf dem Host-System.
Alle zur Laufzeit entstehenden Daten wie:
- Dependencies
- Build-Artefakte
- Framework-Caches
- Tool-State
werden nicht im Repository und nicht im Workspace gespeichert, sondern in Docker Volumes gehalten.