有没有一种方法可以限制Docker中用户的容器访问权限?

时间:2019-05-31 12:11:40

标签: docker archlinux user-permissions

我正在使用Docker机器托管一些进程,例如与朋友一起玩游戏服务器。我想为某些用户(仅用于此用户)提供对某些容器的CLI的访问权限,以免它们互相干扰。我不希望这些根源在此服务器上。

一种解决方案可能是创建用户,允许他们根据自己的容器执行某些命令(例如sudo docker attach),然后让他们执行所有操作。我想知道是否还有另一种更好更好的方法。

您做过这种实验吗?

谢谢。

2 个答案:

答案 0 :(得分:2)

为什么不为每个服务创建一个单独的Docker容器?

因此,换句话说,您为每个朋友创建一个容器,并在每个容器上创建一个用户,该用户是sudo中的成员(因此,您的朋友将是他自己的容器的根)。然后安装openssh-server,并向您的每个朋友提供SSH访问数据(他的用户名和密码)到他的容器中。这样,他们可以做自己想做的事,而不会互相影响。

当然不要忘记将SSH连接(以及所需服务的任何其他连接)从主机转发到容器。

答案 1 :(得分:1)

可悲的是站在那儿

Why doesn't Docker support multi-tenancy?

docker不支持多租户,因此您无法将用户彼此隔离。

编辑:可能的解决方案之一是在每个容器中创建SSH服务器,然后让您的用户通过SSH直接连接到容器,而不使用主机。