Docker: „permission denied … docker daemon socket“ beheben

Du führst einen Docker-Befehl aus und bekommst „permission denied while trying to connect to the Docker daemon socket“? Dieser Fehler bedeutet, dass dein Benutzer keine Rechte für den Docker-Dienst hat. Er ist harmlos und schnell behoben. In dieser Anleitung zeigen wir dir die Lösung.

Die Fehlermeldung im Wortlaut

permission denied while trying to connect to the Docker daemon socket at
unix:///var/run/docker.sock: Get "http://...": dial unix /var/run/docker.sock: connect: permission denied

Warum tritt der Fehler auf?

Der Docker-Dienst kommuniziert über den Socket /var/run/docker.sock. Dieser gehört dem Benutzer root und der Gruppe docker. Ist dein Benutzer nicht Mitglied dieser Gruppe, darf er nicht auf den Socket zugreifen – daher „permission denied“.


Lösung: Benutzer zur docker-Gruppe hinzufügen

Füge deinen Benutzer der Gruppe docker hinzu:

sudo usermod -aG docker $USER

Anschließend musst du die Gruppenmitgliedschaft neu laden – am zuverlässigsten durch Ab- und wieder Anmelden. Für die aktuelle Sitzung geht es auch sofort mit:

newgrp docker

Danach funktioniert Docker ohne sudo. Prüfe es mit:

docker ps

Schnelle Alternative: mit sudo

Willst du die Gruppe nicht ändern, kannst du Docker-Befehle auch mit sudo ausführen (sudo docker ps). Für den Dauerbetrieb ist die docker-Gruppe aber komfortabler. Grundlagen zur Rechteverwaltung findest du unter Benutzer & Gruppen verwalten.


Sicherheitshinweis

Bedenke: Mitglieder der docker-Gruppe haben praktisch Root-Rechte auf dem System, da sich über Docker beliebige Container mit Host-Zugriff starten lassen. Nimm daher nur vertrauenswürdige Benutzer in die Gruppe auf.


Häufige Fragen

Warum funktioniert es nach usermod immer noch nicht?

Die Gruppenmitgliedschaft wird erst bei einer neuen Sitzung aktiv. Melde dich komplett ab und wieder an – oder nutze newgrp docker für die laufende Shell.

Ist es sicher, in der docker-Gruppe zu sein?

Für deinen eigenen Server ist es üblich. Sei dir aber bewusst, dass die docker-Gruppe faktisch Root-Zugriff bedeutet – nimm nur vertrauenswürdige Konten auf.

Muss ich den Docker-Dienst neu starten?

Nein. Es reicht, die Gruppe zu ändern und die Sitzung neu zu laden. Der Docker-Dienst selbst muss nicht neu gestartet werden.


Fazit

„permission denied … docker daemon socket“ heißt nur, dass dein Benutzer nicht in der docker-Gruppe ist. Ein usermod -aG docker $USER und eine neue Sitzung lösen das Problem. Danach läuft Docker ohne sudo – nimm aber nur vertrauenswürdige Benutzer in die Gruppe auf.

Siehe auch  Docker Volumes: Daten dauerhaft speichern (Anleitung)
Nach oben scrollen