Docker „Permission Denied“ Fehler beheben

Jeder Docker Befehl gibt nur „Permission Denied“ zurück? Keine Panik, in diesem Beitrag erfährst du wie du den Docker Permission Denied Fehler einfach beheben kannst.

Du bekommst diese oder oder eine ähnlichen Fehlermeldung? Dann bist du hier genau richtig!

permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get „http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json“: dial unix /var/run/docker.sock: connect: permission denied

Docker Permission Denied Fehlermeldung
Docker Permission Denied Fehlermeldung

Solltest du die Fehlermeldung „unable to read config file: open…“ bekommen, springe direkt zur Lösung.

Docker Permission Denied Fehlermeldung: config.json
Docker Permission Denied Fehlermeldung: config.json

Docker Permission Denied

Das Problem tritt auf, wenn du Docker neu installiert oder geupdatet hast und den docker Befehl als Nicht-Administrator ausführen möchtest.

Jetzt gibt es mehrere Gründe, warum der Fehler auftaucht und entsprechend auch mehrere Möglichkeiten bzw. Optionen das Problem zu lösen. Probiere dich einfach durch die verschiedenen Methoden in diesem Beitrag, bis Docker (wieder) problemlos läuft.

Docker Permission Denied Fehler beheben

Option 1: Docker als Administrator ausführen

Das Problem ist schnell gelöst, wenn du ihn einfach als Administrator/Root User ausführst, also mit sudo.

sudo docker run hello-world

In den meisten Fällen, möchtest du den Docker Befehl jedoch mit dem aktuellen (nicht-Administrator) Nutzer ausführen. Deshalb kommt jetzt Option 2.

Option 2: Berechtigungen für Nicht-Root User anpassen

Solltest du Docker unter Linux oder in einer Linux-Distribution in WSL2 unter Windows nutzen, kannst du die Berechtigungen für den Docker Socket anpassen. Führe dazu die folgenden Befehle aus (Docker Dokumentation):

# 1. Create docker group
sudo groupadd docker

# 2. Add current user to the docker group
sudo usermod -aG docker $USER

# 3. Reload the group configuration
newgrp docker

Jetzt solltest du den docker Befehl ohne sudo nutzen können:

docker run hello-world

Sollte das auch nicht funktionieren, probiere Option 3.

Option 3: Docker Socket Permission anpassen

Möglicherweise wurden die Berechtigungen für die docker.sock Datei verändert und der aktuelle User hat keinen Zugriff darauf. Um die Permissions anzupassen, führe den folgenden Befehle aus:

# Change owner of the docker.sock file
sudo chown root:docker /var/run/docker.sock

Docker Config „Permission Denied“

Erhältst du diese Fehlermeldung?

WARNING: unable to read config file: open /home/<USER>/.docker/config.json: permission denied
/home/lh/.docker/config.json: open /home/<USER>/.docker/config.json: permission denied

Die Berechtigungen für das .docker Verzeichnis in deinem Home-Verzeichnis sind fehlerhaft. Passe die Berechtigungen mit diesen Befehlen an.

# 1. Set correct owner for the .docker directory
sudo chown "$USER":"$USER" /home/"$USER"/.docker -R

# 2. Fix the permissions for the .docker directory
sudo chmod g+rwx "$HOME/.docker" -R

Das Problem sollte dadurch gelöst sein!

Fazit

Mit diesen Optionen solltest du das Docker Permission Denied Problem lösen können. Noch ein kleiner Tipp zum Schluss: Kennst du schon den Docker Init Befehl, um automatisch ein Dockerfile, .dockerignore und compose.yaml zu erzeugen? Erfahre mehr: Docker Init Befehl

Ähnliche Beiträge
Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

bold italic underline strikeThrough
insertOrderedList insertUnorderedList outdent indent
removeFormat
createLink unlink
code

Das könnte dich auch interessieren