以非root用户身份连接到docker容器

运行时默认

docker run -it [myimage]

要么

docker attach [mycontainer]

您以root用户身份连接到终端,但是我想以其他用户身份连接。这可能吗?

回答:

对于docker run

--user <user>在启动Docker容器时,只需添加选项即可更改为其他用户。

docker run -it --user nobody busybox

对于docker attachdocker exec

由于该命令用于附加/执行到现有进程中,因此它直接在此使用当前用户。

docker run -it busybox  # CTRL-P/Q to quit

docker attach <container id> # then you have root user

/ # id

uid=0(root) gid=0(root) groups=10(wheel)

docker run -it --user nobody busybox # CTRL-P/Q to quit

docker attach <container id>

/ $ id

uid=99(nobody) gid=99(nogroup)

如果您确实想附加到想要拥有的用户,那么

  1. 从该用户开始run --user <user>或在您的Dockerfile使用中提及它USER
  2. 使用`su更改用户

以上是 以非root用户身份连接到docker容器 的全部内容, 来源链接: utcz.com/qa/415330.html

回到顶部