为什么用 - 'docker run -d alpine sleep infinity'创建的容器会进入退出/停止状态?

Ana*_*tel 15 docker

我没有什么可以在容器内执行但希望它运行.所以,我尝试使用以下命令行创建一个容器 - 'docker run -d alpine sleep infinity'.但是,相反,它会立即进入退出/停止状态.解释是什么?

Cha*_*ffy 29

alpine是基于busybox的,并没有提供GNU工具中提供的完整数组选项和扩展; infinity作为一个睡眠选项是一个不可用的例子.

请考虑一下:

docker run -d alpine sh -c 'while sleep 3600; do :; done'
Run Code Online (Sandbox Code Playgroud)


Rex*_*ave 8

用这个改变 Dockerfile 中的入口点对我来说很有效

ENTRYPOINT ["/bin/sh","-c","sleep infinity"]
Run Code Online (Sandbox Code Playgroud)

  • 我不明白你的评论@Blastfurnace (2认同)