在docker命令中添加限制
我刚刚开始学习docker工。
我创build了一个“docker”组,并将用户添加到组中,以便这些用户在执行“docker run”时避免使用sudo等。但是,我不希望这些用户运行“docker rm,docker rmi,docker images”等等。有没有一种方法来设置这些命令限制在“docker”组的用户? 这可能实现吗?
谢谢
编辑:
这是我们的情况,(请原谅我的英文,希望我明确解释)
我们有一个节点集群,我们使用可以安装docker,build立docker镜像,并在每个节点上存储图像。 我们不希望任何用户触摸这些节点。
一旦用户通过另一个门户网站login,他们将从集群中分配1个节点,并获得可从浏览器访问的桌面。 我们不希望用户有root权限。 他们只被允许在他们的主文件夹中做事情。 用户不会有sudo密码。
在桌面上,有一个菜单选项“ABC”。 “ABC”是docker集装箱中的一个应用程序。 所以点击菜单选项运行容器,菜单后面的命令是“docker运行…..”。 由于docker只能以root身份运行,因此我们将login用户添加到“docker”组中,以便当用户单击菜单时,“docker run”不会询问sudo密码,并且应用程序容器将成功运行。
但问题在于,“docker”组中的任何用户都被认为是root用户,所以即使我们能够允许用户使用“docker run”,他们仍然可以做很多事情。
如果我们不将用户添加到“泊坞窗”组中,单击菜单将不会启动程序。
我仍然在寻找解决scheme。
谢谢
这是不平凡的,但twistlock authz插件支持在Docker引擎上限制个人的行为。 你将需要configuration证书的Docker,给访问docker的用户颁发证书,从docker组中删除他们的unix套接字访问,并通过networking端口用他们的证书login,安装第三方插件,以及然后设置您的ACL。
对于一个更全面的解决scheme,Docker也有他们的商业产品。