Nach einem Upgrade wurde mir die Erlaubnis verweigert. Durch Ausführen der Schritte "mkb" nach der Installation hat sich nichts geändert, da mein Benutzer bereits in der Gruppe "Docker" war. Ich versuche es auf jeden Fall zweimal ohne Erfolg.
Nach einer Suchstunde funktionierte diese folgende Lösung endgültig:
sudo chmod 666 /var/run/docker.sock
Die Lösung kam aus Olshansk .
Es sieht so aus, als hätte das Upgrade den Socket ohne ausreichende Berechtigung für die Docker-Gruppe neu erstellt.
Probleme
Diese harte chmod offene Sicherheitslücke und nach jedem Neustart tritt dieser Fehler immer wieder auf und Sie müssen den obigen Befehl jedes Mal erneut ausführen. Ich möchte ein für alle Mal eine Lösung. Dafür haben Sie zwei Probleme:
1) Problem mitSystemD
: Der Socket wird nur mit dem Eigentümer 'root' und der Gruppe 'root' erstellt.
Sie können dieses erste Problem mit diesem Befehl überprüfen:
ls -l /lib/systemd/system/docker.socket
Wenn dies alles gut ist, sollten Sie root/docker
"nicht root/root
" sehen.
2) Problem mit der grafischen Anmeldung : /superuser/1348196/why-my-linux-account-only-belongs-to-one-group
Sie können dieses zweite Problem mit diesem Befehl überprüfen:
groups
Wenn alles korrekt ist, sollte die Docker- Gruppe in der Liste angezeigt werden . Wenn nicht, versuchen Sie den Befehl
sudo su $USER -c groups
Wenn Sie dann die Docker- Gruppe sehen, liegt dies an dem Fehler.
Lösungen
Wenn Sie eine Problemumgehung für die grafische Anmeldung erhalten, sollte dies folgende Aufgabe erfüllen:
sudo chgrp docker /lib/systemd/system/docker.socket
sudo chmod g+w /lib/systemd/system/docker.socket
Aber wenn Sie diesen Fehler nicht bewältigen können, könnte eine nicht so schlechte Lösung folgende sein:
sudo chgrp $USER /lib/systemd/system/docker.socket
sudo chmod g+w /lib/systemd/system/docker.socket
Dies funktioniert, weil Sie sich in einer grafischen Umgebung befinden und wahrscheinlich der einzige Benutzer auf Ihrem Computer sind. In beiden Fällen benötigen Sie einen Neustart (oder einen sudo chmod 666 /var/run/docker.sock
)