Ich habe Docker über den Softwarespeicher installiert, der darauf hinwies, dass es sich um ein Snap-Paket handelte. Was für mich in Ordnung ist, denke ich, aber leider funktioniert jeder Docker-Befehl, den ich ausprobiert habe, nicht:
$ docker info
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.30/info: dial unix /var/run/docker.sock: connect: permission denied
Irgendeine Idee, wie man das behebt?
Bearbeiten: Ich habe dies vorerst umgangen, indem ich Docker aus Dockers eigenen Repositorys installiert habe , was möglicherweise auch in Zukunft für Leute funktioniert, die diese Frage durchsuchen. Ich lasse die Frage jedoch für diejenigen offen, die sie über den Snap ausführen möchten.
16.04
ubuntu-gnome
snap
docker
Vincent
quelle
quelle
docker
Gruppe hinzufügte. Docker wurdeid -nG
nicht angezeigt, und eindocker
Befehl führte zu einem Fehler, bei dem die Berechtigung verweigert wurde. Abmelden und erneutes Anmelden funktionierte nicht, da der Docker-Systemprozess weiter ausgeführt wird. Beim Neustarten des Systems oder beim Neustarten von Docker wurde der Benutzer als Teil der Docker-Gruppe angezeigt und die Ausführung von Docker-Befehlen zugelassen. HINWEIS: 0 Wiederholungen, kann keinen Kommentar hinzufügen.Antworten:
Dies ist von der GitHub-Seite, haben Sie genau diese Schritte versucht:
Vom Docker-Schnellgithub
quelle
addgroup
Anweisungen folgen , von denen ich denke , dass sie sich auf das beziehen, was ich getan habe, wie in den anderen Antworten angegeben. Leider würde ich es vorziehen, das derzeit funktionierende System nicht mehr zu berühren, aber ich würde es gerne hören, wenn jemand anderes dies versucht und es schafft, es zum Laufen zu bringen.Die Fehlermeldung besagt, dass Ihr aktueller Benutzer nicht auf die Docker-Engine zugreifen kann, da Ihnen die Berechtigungen zum Zugriff auf den Unix-Socket für die Kommunikation mit der Engine fehlen.
Vorübergehende Lösung
Verwenden Sie den
sudo
Befehl, um die Befehle jedes Mal mit erhöhten Berechtigungen auszuführen.Dauerhafte (vorgeschlagene) Lösung
Fügen Sie den aktuellen Benutzer der
docker
Gruppe hinzu. Dies kann durch Eingabe erreicht werdenSie müssen sich abmelden und erneut anmelden, damit die Gruppenmitgliedschaft wirksam wird.
Quelle: techoverflow.net
quelle
docker
existierte die Gruppe nicht. Ich habe dann zuerstsudo addgroup docker
Ihren Befehl ausgeführt und dann erneut ausgeführt, mich dann abgemeldet und wieder angemeldet. Leider bleibt der in der Frage gezeigte Fehler bestehen ...newgrp docker
odergroups vincent
gibt:vincent adm cdrom sudo dip plugdev lpadmin sambashare docker
sudo /etc/init.d/docker status
odersudo service docker status
testen Sie dies.ps cax | grep dockerd
das gibt es31034 ? Ssl 0:05 dockerd
.Ich gehe davon aus, dass sich Ihr Benutzername bereits in der Docker-Gruppe befindet. Um dies zu überprüfen, geben Sie den folgenden Befehl ein.
Wenn nicht, müssen Sie Ihren Benutzer mit dem folgenden Befehl zur Docking-Gruppe hinzufügen.
Wenn Sie den Befehl ausführen
sudo systemctl start docker
, wird ein Docker-Prozess erstellt. Dieser Docker-Prozess enthält einendockerd
Daemon-Thread. Der Befehl erstellt auch einen Standard-docker.sock
Unix-Socket. Derdocker.sock
Socket wird ständig vomdockerd
Daemon-Thread abgehört . Auf diese Weise können Sie IPCs auf Kernel-Ebene mitdocker.pid
process ausführen . Um diesen Docker-Socket verwenden zu können, benötigen Sie die entsprechenden Berechtigungen auf Prozess- (docker.pid
) und Dateiebene (docker.sock
). Wenn Sie also die folgenden zwei Befehle ausführen, sollte das Problem behoben sein.sudo chmod a+rwx /var/run/docker.sock # You can provide just execute permission sudo chmod a+rwx /var/run/docker.pid
quelle
erfordert keinen Neustart und ist sicherer
quelle
Sie sollten den Benutzer der Docker-Gruppe hinzufügen ( siehe offizielle Dokumente ).
Sie können
sudo
vor dem Befehl hinzufügen oder den Benutzer mit dem folgendendocker
Befehl zur Gruppe hinzufügen :Melden Sie sich ab und wieder an, damit Ihre Gruppenmitgliedschaft erneut bewertet wird.
quelle