4

我有一个 docker 映像中的代码测试环境,我通过在容器中运行 bash 来使用它:

me@host$ docker run -ti myimage bash

在容器内,我通常通过说

root@docker# ./myprogram

但是,我希望 myprogram 的过程具有负面的好处(这是有正当理由的)。然而:

root@docker# nice -n -7 ./myprogram
nice: cannot set niceness: Permission denied

鉴于 docker 是由作为 root 运行的 docker 守护进程运行的,而我是容器内的 root,为什么这不起作用以及如何强制产生负面的好处

注意:docker 镜像运行的是 debian/sid,宿主机是 ubuntu/12.04。

4

2 回答 2

6

尝试添加

--privileged=true

到你的运行命令。

[编辑] privileged=true 是旧方法。好像

--cap-add=SYS_NICE

也应该工作。

于 2014-09-25T19:11:49.897 回答
1

-c您还可以使用CPU 份额设置整个容器的 CPU 优先级。

于 2014-09-26T23:13:08.043 回答