背景

近期在进行Dockerfile实践时,运行了一个简单的容器后,然后docker ps -a 进行查看, 会发现容器已经退出。

原因

Docker容器后台运行,就必须有一个前台进程.容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。

解决办法

在启动脚本里面增加一个执行进程:

tail -f /dev/null

tail -f /dev/null

如果是别人的镜像你不想修改,可以用-dit参数

docker run -dit --name ubuntu2 ubuntu

或 

docker run -d --name ubuntu ubuntu /bin/bash -c "tail -f /dev/null"

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐