После обновления я получил отказано в разрешении. Выполнение шагов после установки 'mkb' ничего не меняет, потому что мой пользователь уже был в группе 'docker'; Я повторяю это дважды, но безуспешно.
После часа поиска наконец-то сработало следующее решение:
sudo chmod 666 /var/run/docker.sock
Решение пришло из Ольшанска .
Похоже, что при обновлении воссоздается сокет без достаточных разрешений для группы «Докер».
Проблемы
Этот жесткий chmod открывает дыру в безопасности и после каждой перезагрузки эта ошибка запускается снова и снова, и вам приходится каждый раз повторять вышеуказанную команду. Я хочу решение раз и навсегда. Для этого у вас есть две проблемы:
1) Проблема сSystemD
: сокет будет создан только с владельцем 'root' и группой 'root'.
Вы можете проверить эту первую проблему с этой командой:
ls -l /lib/systemd/system/docker.socket
Если все это хорошо, вы должны увидеть root/docker
«не root/root
».
2) Проблема с графическим логином : /superuser/1348196/why-my-linux-account-only-belongs-to-one-group
Вы можете проверить эту вторую проблему с этой командой:
groups
Если все правильно, вы должны увидеть группу Docker в списке. Если нет, попробуйте команду
sudo su $USER -c groups
если вы видите, то группа Docker это из-за ошибки.
Решения
Если вам удастся получить обходной путь для графического входа в систему, это должно сделать работу:
sudo chgrp docker /lib/systemd/system/docker.socket
sudo chmod g+w /lib/systemd/system/docker.socket
Но если вы не можете справиться с этой ошибкой, неплохое решение может быть следующим:
sudo chgrp $USER /lib/systemd/system/docker.socket
sudo chmod g+w /lib/systemd/system/docker.socket
Это работает, потому что вы находитесь в графической среде и, вероятно, единственный пользователь на вашем компьютере. В обоих случаях вам нужна перезагрузка (или sudo chmod 666 /var/run/docker.sock
)