Tag: 特权

为什么docker容器中的shell会显示来自主机的dmesg内容?

我有一个在Ubuntu yakkety上运行Debian jessie的docker容器。 在Docker中(例如通过ssh连接),我与主机隔离(这是预期的)。 然而,我意识到, dmesg向我显示了主机的信息,而不是容器的信息。 如何获取主机的信息? docker容器的configuration不是特别的(除了它使用一个特定的桥,不同于docker0 ),特别是它不能以任何特权模式运行(下面的"Privileged": false ): root@srv ~# docker inspect minecraft-1-8 [ { "Id": "748cfdfbf3fb5526cb7151cbc0857117af3c7bd8ab9e086c4f2efb897290d66e", "Created": "2016-12-01T15:35:05.287672787Z", "Path": "/usr/bin/supervisord", "Args": [], "State": { "Status": "running", "Running": true, "Paused": false, "Restarting": false, "OOMKilled": false, "Dead": false, "Pid": 28650, "ExitCode": 0, "Error": "", "StartedAt": "2016-12-15T18:37:08.409564695Z", "FinishedAt": "2016-12-15T18:37:07.457274028Z" }, "Image": "sha256:78a2f88d47e29523503c2196ed2faaa3d1039d948d73987edc03b2abd338595d", "ResolvConfPath": "/var/lib/docker/containers/748cfdfbf3fb5526cb7151cbc0857117af3c7bd8ab9e086c4f2efb897290d66e/resolv.conf", […]

我怎样才能设置docker过程的负面的好处?

我有一个docker的图像,我通过在容器中运行bash使用代码的testenvironment: 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。

在Dockerfile中运行命令为–privileged

我需要蜜蜂 – 特权才能在Dockerfile中运行特定的命令,但我找不到告诉docker这样做的方法。 该命令是RUN echo core > /proc/sys/kernel/core_pattern 如果我把它放在Dockerfile中,构build过程失败。 如果我运行Dockerfile的那一行评论,但与国旗 – –privileged那么我可以在容器内运行良好的命令。 是否有任何解决scheme,使一切从Dockerfile工作? 谢谢