【发布时间】:2019-01-29 14:47:23
【问题描述】:
经过一些研究,我能够使用我的主机用户运行 docker:
docker run -it \
-v /etc/passwd:/etc/passwd \
-v /etc/group:/etc/group \
-v /etc/sudoers:/etc/sudoers \
-v $HOME:$HOME \
--user=$(id -u):$(id -g) \
...
我现在的问题是我的密码与主机不同。 (即当我做 su - my-user 我得到错误的密码错误)。
这是有问题的,因为现在用户无法运行 sudo,除非他是无密码的 sudoer。
知道如何解决这个问题吗?
【问题讨论】:
-
一个是的,没有问题,您是否尝试在需要 root 权限的用户空间中运行 docker 容器?
-
在 Docker 中通常不需要
sudo,它与典型的工作流交互很糟糕,因为通常没有控制终端。在您的 Dockerfile 中指定USER root(这是默认值),或者从主机使用-u root或-u 0选项到docker run或docker exec。还请记住,当您docker rm容器时,您在容器内所做的任何事情都会丢失:通常不鼓励在正在运行的容器中安装软件和类似的管理任务。
标签: docker