需要编写一个在dock-a中安装docker的Dockerfile。因为container-a需要执行docker命令到container-b,它与container-a一起运行。
我的理解是你在编写Dockerfile时不应该使用“sudo”。
但我陷入困境 - 我指派给docker组的用户是什么?当您运行docker exec -it
时,您将自动为root。
sudo usermod -a -G docker whatuser?
另外(我正在容器内手动尝试这个,看看它是否有效)你必须做newgrp docker
来激活对组的更改。无论何时我这样做,当我没有sudo'ed时,我最终会sudo'ing。那有意义吗?症状是 - 我转到exit
容器,我必须退出两次(好像我改变了用户)。
我做错了什么?
答案 0 :(得分:3)
如果您尝试将容器并排运行(不是容器内的容器),则应该从主机系统安装docker socket并以这种方式执行命令到其他容器:
docker run --name containera \
-v /var/run/docker.sock:/var/run/docker.sock \
yourimage
安装了docker socket后,您可以控制主机系统上的docker。