当入口点指定在后台运行命令时,为什么容器会退出?
例如。如果我运行docker run -d ubuntu bash -c "sleep 12000&"
,则容器退出。如果我运行docker run -d ubuntu bash -c "sleep 12000"
,则容器将继续运行。
后台的进程不足以保持容器运行吗?
为什么在后台或前台运行的sleep
会对此产生影响?
最佳答案
根据Docker的说法,容器应该在运行时
the container’s primary process (PID 1) is running
在您的情况下,主进程
bash
和容器“运行”,直到该进程退出。
关于docker - 容器可以继续运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54200027/