TL;DR
Entwicklungsumgebungen sind in den letzten Jahren zu einem attraktiven Angriffsziel geworden. Gleichzeitig wird Sicherheit in der eigenen Entwicklungsumgebung oft nur am Rande mitgedacht.
Diese Guideline beschreibt einen Ansatz für eine sicherheitsorientierte lokale Entwicklungsumgebung auf Basis von Docker und Development Containern. Die konkreten Beispiele beziehen sich auf macOS, die Prinzipien gelten plattformunabhängig.
Im Kern behandelt sie:
- Trennung und Konfiguration von Git-Identitäten und SSH-Zugängen
- sicherheitsrelevante Aspekte beim Betrieb von Docker Desktop
- Architektur und Aufbau von Development Containern
- eine konkrete Multi-Container Entwicklungsumgebung
- Supply-Chain-Schutz bei der Dependency-Installation
- Getrennte Laufzeitumgebungen für AI-Tools (read-only für Analyse, read/write für Änderungen)
Die Guideline kombiniert dabei konzeptionelle Grundlagen mit einem konkreten, lauffähigen Referenzprojekt1, das einen direkten praktischen Einstieg ermöglicht.
Wie diese Guideline gelesen werden sollte
Abschnitt betitelt „Wie diese Guideline gelesen werden sollte“1. Grundlagen
Abschnitt betitelt „1. Grundlagen“In diesem Teil geht es um Bestandteile, die unabhängig von Development Containern für eine sichere lokale Entwicklungsumgebung relevant sind:
- Git & SSH: Trennung von Identitäten und Zugängen
- Docker Desktop: Sicherheitsrelevante Konfiguration
- Struktur der lokalen Entwicklungsumgebung
Sie bilden das Fundament für die spätere Development Container Umgebung, können aber auch unabhängig davon genutzt werden.
2. Development Container
Abschnitt betitelt „2. Development Container“Dieser Teil bildet den Schwerpunkt der Guideline:
- Development Container Architekturansätze und Sicherheitsmodell
- Container-, Volume- und Netzwerk-Konzept
- Implementierung einer gehärteten Development Container Umgebung
Empfohlene Einstiegspunkte:
3. Anwendung und Integration
Abschnitt betitelt „3. Anwendung und Integration“Dieser Teil zeigt, wie die Umgebung praktisch genutzt wird:
- konkrete Workflows
- Einsatz von Claude Code
- Referenzprojekt als Ausgangspunkt für eigene Projekte
Empfohlene Einstiegspunkte: