限制个人用户的码头集装箱资源
问题描述:
对于码头集装箱,您可以在docker run
上设置CPU限制(例如--cpu-quota
--cpu-shares
)和内存限制(--memory
)。也可以通过--ulimit
为用户设置全球nproc
限制。限制个人用户的码头集装箱资源
比方说,两个不同的用户在一个容器中运行的工作负载。是否有一种方法可以为一个特定码头集装箱内的单个用户(而不是系统全局)设置限制?
例如与--ulimit nproc=100
它是不可能指定一个用户被允许准确运行最多N个过程的搬运工容器的内部。例如,如果用户已经在容器外运行了40个进程,则允许他在容器内运行60个进程。如果您设置ulimit nproc=40
并且40个进程将在容器外部运行,他将不被允许在容器内启动新的进程。
所以我在寻找一种方式来执行用户的基础上CPU,内存和进程数限制为单个泊坞窗容器(即使其他搬运工的容器没有这些限制在同一系统上运行)。为每个用户启动泊坞窗容器不是一种选择。
答
您可以使用相同的MYIMAGE推出2级型动物的命令,例如
docker run -u user1 --cpu-shares=12... myimage
和
docker run -u user2 --cpu-shares=24...myimage
你只需要在创建映像的创建2个用户
不知道这是否回答您的问题
这将启动两个容器,在我的方案中,一个容器中有多个用户。 –