Après une mise à niveau, l'autorisation m'a été refusée. Faire les étapes des étapes de post-installation de «mkb» n'ont rien changé car mon utilisateur était déjà dans le groupe «docker»; Je recommence deux fois sans succès.
Après une heure de recherche, cette solution suivante a finalement fonctionné:
sudo chmod 666 /var/run/docker.sock
La solution est venue d' Olshansk .
On dirait que la mise à niveau a recréé le socket sans autorisation suffisante pour le groupe 'docker'.
Problèmes
Ce chmod dur ouvre un trou de sécurité et après chaque redémarrage, cette erreur recommence encore et encore et vous devez réexécuter la commande ci-dessus à chaque fois. Je veux une solution une fois pour toutes. Pour cela vous avez deux problèmes:
1) Problème avecSystemD
: Le socket sera créé uniquement avec le propriétaire 'root' et le groupe 'root'.
Vous pouvez vérifier ce premier problème avec cette commande:
ls -l /lib/systemd/system/docker.socket
Si tout cela est bon, vous devriez voir root/docker
«non root/root
».
2) Problème de connexion graphique : /superuser/1348196/why-my-linux-account-only-belongs-to-one-group
Vous pouvez vérifier ce deuxième problème avec cette commande:
groups
Si tout est correct, vous devriez voir le groupe de dockers dans la liste. Sinon essayez la commande
sudo su $USER -c groups
si vous voyez alors le groupe docker c'est à cause du bug.
Solutions
Si vous parvenez à obtenir une solution de contournement pour la connexion graphique, cela devrait faire le travail:
sudo chgrp docker /lib/systemd/system/docker.socket
sudo chmod g+w /lib/systemd/system/docker.socket
Mais si vous ne pouvez pas gérer ce bogue, une solution pas si mauvaise pourrait être la suivante:
sudo chgrp $USER /lib/systemd/system/docker.socket
sudo chmod g+w /lib/systemd/system/docker.socket
Cela fonctionne parce que vous êtes dans un environnement graphique et probablement le seul utilisateur de votre ordinateur. Dans les deux cas, vous avez besoin d'un redémarrage (ou d'un sudo chmod 666 /var/run/docker.sock
)