我在docker组中有一些用户(A,B,...),基本上,每个用户都可以从映像启动容器,但是当用户A在后台启动容器时(使用-d标志)会出现问题。此时,用户B可以附加此容器。限制用户仅添加他们启动的容器的最佳解决方案是什么?
我混淆了一些根访问,名称空间等,我不知道和Docker一样。
我想说'为每个用户创建新的组'但是你必须使用Docker权限配置每个组,这将使你最终回到原点。做一些研究,团体也不可能成为团体的一部分。 https://unix.stackexchange.com/questions/47645/group-within-group-file-permissions
我不相信有一种可管理的方法可以实现您想要做的事情,而不是将每个用户放入自己的机器/实例/虚拟机。
如果你想到这一点,我会有兴趣知道解决方案。祝你好运。
任何可以运行任何Docker命令的人都可以通过主机进行无限制的root访问。
Docker没有任何内置方式来限制您建议的访问方式。任何人都可以将docker attach
带到任何其他人的容器中;任何人都可以docker stop; docker rm
他们;任何人都可以docker run
一个看似相同的容器,但具有不同的容量坐骑;任何人都可以docker run -v/:/host ...
并以root身份对主机文件系统进行任意更改。
您应该重新考虑是否可以在这样的多用户系统上使用Docker。将某人添加到docker
组等同于给予他们不受限制的sudo
访问权限(并且如果他们还没有它,那么这是一个简单的docker run
命令让他们自己给它)。