Docker容器自动退出问题解决方案

Docker

我在shell脚本里面执行了docker run 命令,

用来生成一个docker容器,但是随着shell脚本运行完毕,

生成的容器也自动退出了,经查询原因,在stackoverflow上找到一种解决办法,

在生成容器的时候,初始化执行的命令不能自动退出,例如:

docker container run  -d -P --name $user  tonvin/ubuntu:wp7 /bin/bash /root/init.sh

上面的命令基于镜像tonvin/ubuntu:wp7生成一个名为$user的容器,

最后面的/bin/bash /root/init.sh表示初始化完毕后运行shell脚本/root/init.sh

我在/root/init.sh末尾添加了一行tail -f /dev/null

生成的容器就不自动退出了,也许此方法不好,但暂时可以解决问题。

还有一种办法是启动的时候添加参数 –restart=always

-d参数表示daemon方式运行

-P参数指示生成随机的端口映射