为了debugging为什么会出现此问题在容器上运行以下命令:
docker run -it <dockerImageName> dmesg
结果是:
dmesg: read kernel buffer failed: Permission denied
尝试
docker run -it <dockerImageName> sudo dmesg返回相同的问题 正如迈克尔·汉普顿 ( Michael Hampton)提到的,容器只能运行单个primefaces服务。 事实上,人们应该明白,容器不是虚拟机,而是本地主机上的一个进程。
尽pipe如此,我还是知道,从这里开始,SystemD在一个容器内工作起来要困难得多
我能够得到SystemD工作在一个内置的从centos:centos7的图像中:
docker run –privileged -ti -e“container = docker”-v / sys / fs / cgroup:/ sys / fs / cgroup trinitronx / ansible-base:stable-centos7 / usr / sbin / init
对于一些无证的原因,variablescontainer = docker显然是必需的。 / sys / fs / cgroup也是必需的,因为SystemD需要cgroups根据RedHat Bug 1033604正常工作。
做完这些之后,尝试使用docker exec -it <container> /bin/bashlogin容器,然后执行systemctl命令。