
30 DCA-Fragen #2: Setze dein Training fort
Zweite Serie von 30 Fragen zur Vorbereitung auf die Docker Certified Associate Prüfung. Interaktives DOMC-Format, neue Fragen und fortgeschrittene Fallen.
Du hast die 30 DCA-Fragen #1 abgeschlossen? Perfekt, hier ist die Fortsetzung!
Diese zweite Serie von 30 Fragen behandelt fortgeschrittenere Aspekte der 6 Prüfungsbereiche. Gleiches DOMC-Format: eine Option nach der anderen, JA oder NEIN, kein Zurückgehen möglich.
Orchestrierung (25% der Prüfung)#
Fortgeschrittene Fragen zu Docker Swarm: Rolling Updates, Constraints, Labels und Fehlerbehandlung.
Zusätzliche Fragen - Orchestrierung#
F6: Wie begrenzt man einen Service auf genau ein Replika pro Knoten?
Verwende den global-Modus anstelle von replicated:
docker service create --mode global --name monitoring prometheusIm global-Modus deployt Swarm genau einen Task auf jedem Knoten, der den Constraints entspricht.
F7: Was ist der Unterschied zwischen docker service update --force und docker service rollback?
--forcedeployt die aktuelle Konfiguration neu (nützlich zum Aktualisieren von Containern)rollbackstellt die vorherige Konfiguration wieder her (macht die letzten Änderungen rückgängig)
F8: Wie sieht man die Logs aller Replikas eines Services?
docker service logs myservice
# Oder mit Timestamps und kontinuierlicher Ausgabe
docker service logs -f --timestamps myserviceImages & Registry (20% der Prüfung)#
Fortgeschrittene Fragen zu Dockerfiles, Build-Cache und Registries.
Häufige Falle: COPY vs ADD
Verwende immer COPY, es sei denn, du benötigst die automatische tar-Extraktion. ADD kann unerwartetes Verhalten zeigen (Download von URL, Extraktion). COPY ist expliziter und vorhersehbarer.
Zusätzliche Fragen - Images#
F5: Wie baut man ein Image für eine andere Architektur?
# ARM64 von x86 aus bauen
docker buildx build --platform linux/arm64 -t myimage:arm64 .F6: Welcher Befehl löscht ungenutzte Images?
docker image prune # Dangling Images (ohne Tag)
docker image prune -a # Alle Images, die von keinem Container verwendet werdenInstallation & Konfiguration (15% der Prüfung)#
Fragen zu Logging-Treibern, Daemon und Backups.
Zusätzliche Fragen - Konfiguration#
F4: Wie ändert man das Docker-Speicherverzeichnis?
In /etc/docker/daemon.json:
{
"data-root": "/mnt/docker-data"
}Dann Docker neu starten. Vergiss nicht, die vorhandenen Daten zu migrieren!
F5: Wie begrenzt man die Standard-Ressourcen für Container?
{
"default-ulimits": {
"nofile": { "Name": "nofile", "Hard": 64000, "Soft": 64000 }
}
}Networking (15% der Prüfung)#
Fortgeschrittene Fragen zu Overlay-Netzwerken, DNS und Troubleshooting.
Zusätzliche Fragen - Networking#
F4: Wie debuggt man Netzwerkprobleme zwischen Containern?
# Konnektivität prüfen
docker exec container1 ping container2
# Netzwerkkonfiguration inspizieren
docker inspect --format='{{json .NetworkSettings.Networks}}' container1
# Endpoints eines Netzwerks anzeigen
docker network inspect mynetworkF5: Warum kann ein Container den Namen eines anderen Containers nicht auflösen?
Mögliche Ursachen:
- Die Container befinden sich nicht im selben Netzwerk
- Das interne Docker-DNS ist deaktiviert (host-Netzwerk)
- Der Zielcontainer hat keinen exponierten Service
Security (15% der Prüfung)#
Fortgeschrittene Fragen zu Secrets, Capabilities und Best Practices.
Sicherheitsfalle: --privileged
Verwende niemals --privileged in der Produktion, es sei denn, es ist absolut notwendig. Dieses Flag deaktiviert alle Sicherheitsschutzmaßnahmen. Füge bevorzugt nur die notwendigen Capabilities mit --cap-add hinzu.
Zusätzliche Frage - Security#
F4: Wie scannt man ein Image auf Schwachstellen?
# Mit Docker Scout (integriert)
docker scout cves myimage:v1
# Mit Trivy (populäres externes Tool)
trivy image myimage:v1Storage (10% der Prüfung)#
Fortgeschrittene Fragen zu Volumes und Persistenzstrategien.
Zusätzliche Fragen - Storage#
F3: Was ist der Unterschied zwischen -v und --mount?
| Aspekt | -v / --volume | --mount |
|---|---|---|
| Syntax | Kompakt: -v src:dst:opts | Explizit: --mount type=...,source=...,target=... |
| Nicht existierender Bind Mount | Erstellt den Ordner | Fehler |
| Empfehlung | Legacy | Bevorzugt für Klarheit |
F4: Wie teilt man ein Volume zwischen mehreren Swarm-Services?
# In docker-compose.yml
volumes:
shared-data:
driver: local
services:
app1:
volumes:
- shared-data:/data
app2:
volumes:
- shared-data:/dataHinweis: Für echtes verteiltes Sharing verwende einen externen Volume-Treiber (NFS, GlusterFS usw.).
Zusammenfassung#
Du hast die 30 DCA-Fragen #2 abgeschlossen! Mit den 30 Fragen aus dem ersten Artikel hast du jetzt 60 Fragen zu allen Prüfungsbereichen gesehen.
Kernpunkte dieser Serie#
- Fortgeschrittene Orchestrierung: rollback, failure-action, Constraints mit Labels
- Images: exec-Form vs shell-Form für ENTRYPOINT, buildx für Multi-Arch
- Networking: Swarm-Ports (2377, 7946, 4789), Host- vs Ingress-Modus
- Security: docker trust sign, --cap-drop ALL
Nächste Schritte#
- Wiederhole 30 DCA-Fragen #1, falls du es noch nicht gemacht hast
- Übe die Befehle in einer echten Docker-Umgebung
- Lies unseren Artikel DCA in 6 Wochen vorbereiten für einen strukturierten Plan
Viel Erfolg bei deiner DCA-Prüfungsvorbereitung!