[我正在尝试通过/sbin/init
流程启动Debian图像,以通过分子进行角色测试。
[是,我知道,除非您确实有用例,否则不应在容器中启动/sbin/init
。借助Molecular,我可以在docker容器中测试自己的角色。因此,我需要运行/sbin/init
。
执行时
docker run -it --privileged -v /sys/fs/cgroup:/sys/fs/cgroup:ro debian:9 /sbin/init
docker: Error response from daemon: OCI runtime create failed: container_linux.go:346:
starting container process caused "exec: \"/sbin/init\": stat /sbin/init: no such file
or directory": unknown.
但是,对于debian:8来说,它很好用。
docker run -it --privileged -v /sys/fs/cgroup:/sys/fs/cgroup:ro debian:8 /sbin/init
像魅力一样工作。
Debian是否已切换到新的引导过程?发生了什么变化?
结果Debian从其docker映像中删除了以debian:9及更高版本开头的init
软件包。
太好了,因为它可以帮助我们所有人早日失败。除非我们有一个用例,否则我们真的不应该开始/sbin/init
-并相信我,在大多数情况下,我们不这样做。
那么,如果我们确实有一个需要运行/sbin/init
的用例该怎么办?
嗯,我们可以通过安装它
apt-get install -y init
如果您需要一个Dockerfile
FROM debian:9
RUN apt-get update && apt-get install -y init && apt-get clean all