пользователь по умолчанию не добавлен в группу Docker, нужно сделать su $ USER? - PullRequest
0 голосов
/ 19 ноября 2018

У меня Ubuntu 18.04.и после установки docker я добавил моего пользователя в группу docker с помощью команды

sudo usermod -aG docker ${USER}

и вошел в систему

su - ${USER}

, и если я проверю id, мой пользователь будет добавлен в группу docker.

Но когда я снова открываю терминал, я не могу делать команды Docker без sudo , кроме случаев, когда я явно выполняю su ${USER}

, я не могу найти группу Docker по умолчаниюпользователь. Что мне здесь не хватает?

1 Ответ

0 голосов
/ 19 ноября 2018

@ larsks уже ответил на главный вопрос в комментарии, однако я хотел бы подробнее рассказать о последствиях этого изменения (добавление пользователя по умолчанию в группу docker).

По сути, Dockerсокет-демон принадлежит root:docker, поэтому для использования команд консоли Docker необходимо либо находиться в группе docker, либо добавить все команды docker к sudo.

.Как указано в документации Docker , рискованно следовать первому решению на вашей персональной рабочей станции, поскольку это просто означает, что пользователь по умолчанию имеет права root без защиты sudo, подобной парольной подсказке.Действительно, пользователи в группе docker являются de facto root на хосте.См., Например, эту статью и эту одну .

Вместо этого вы можете захотеть следовать второму решению, которое можно несколько упростить, добавив к своему ~/.bashrcподайте псевдоним, например:

alias docker="sudo /usr/bin/docker"

Таким образом, docker run --rm -it debian будет автоматически расширен до sudo /usr/bin/docker run --rm -it debian, тем самым сохраняя защиту sudo для вашего пользователя по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...