运行异常是因为没有设置启动命令或者默认的启动命令为 bash,导致容器执行完启动程序就退出了。要使容器一直运行,容器里 PID 为1的进程必须是常驻进程,否则 PID 为1的进程一结束容器就退出了。对于部分镜像如 centos 等,可以使用 /bin/bash 作为运行命令, -c sleep 800000 作为运行参数来创建服务,在控制台填运行参数时 -c 和 sleep 800000 必须放在两行。
目前已知的使用默认参数启动不了服务的镜像包括这些:clearlinux、ros、mageia、amazonlinux、ubuntu、clojure、crux、gcc、photon、java、debian、oraclelinux、mono、bash、buildpack-deps、golang、sourcemage、swift、openjdk、centos、busybox、docker、alpine、ibmjava、php和python。