Docker Best Practices
Neben der sicherheitsrelevanten Konfiguration von Docker Desktop gibt es grundlegende Best Practices im Umgang mit Containern, die insbesondere in Entwicklungsumgebungen wichtig sind.
Privileged Container vermeiden
Abschnitt betitelt „Privileged Container vermeiden“Privilegierte Container heben viele der Sicherheitsmechanismen von Docker auf. Folgende Optionen sollten daher nicht verwendet werden:
--privilegedoder in Docker Compose:
privileged: trueKeine zusätzlichen Socket-Mounts
Abschnitt betitelt „Keine zusätzlichen Socket-Mounts“Neben dem Docker-Socket existieren weitere sensible Container-Runtime-Sockets. Diese sollten niemals in Container gemountet werden.
Beispiele:
/var/run/docker.sockGit Credentials nicht mounten
Abschnitt betitelt „Git Credentials nicht mounten“Git- oder SSH-Credentials sollten ebenfalls nicht direkt in Container gemountet werden.
Beispiele:
~/.ssh:/root/.ssh~/.gitconfigStattdessen sollte SSH-Agent Forwarding verwendet werden. Dadurch verbleiben private Schlüssel auf dem Host-System und werden nicht im Container gespeichert.