以非root用户身份连接到docker容器
运行时默认
docker run -it [myimage]
要么
docker attach [mycontainer]
您以root用户身份连接到终端,但是我想以其他用户身份连接。这可能吗?
回答:
对于docker run
:
--user <user>
在启动Docker容器时,只需添加选项即可更改为其他用户。
docker run -it --user nobody busybox
对于docker attach
或docker exec
:
由于该命令用于附加/执行到现有进程中,因此它直接在此使用当前用户。
docker run -it busybox # CTRL-P/Q to quitdocker 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)
如果您确实想附加到想要拥有的用户,那么
- 从该用户开始
run --user <user>
或在您的Dockerfile
使用中提及它USER
- 使用`su更改用户
以上是 以非root用户身份连接到docker容器 的全部内容, 来源链接: utcz.com/qa/415330.html