docker 容器启动报错 如何看?荣胜网络为您解答!

2020年03月24日

 docker 容器启动报错 如何看?我们在docker容器的使用过程中,难免会遇到一些问题。可以把常见的问题分为如下几类。
应用故障:应用执行状态与预期不一致;
 
容器故障:无法正确创建、停止、更新容器等;
 
集群故障:集群创建失败、更新失败、无法连接等。
 
对于初学者而言,一个经常遇到的问题是,Docker容器启动后自动退出,docker logs也没有特殊输出。如果容器启动参数时包含“–restart=always” 或“–restart”,则会不停重启。
 
这个问题常见的原因是,容器的PID1进程(初始化进程)不是一个长时间运行的进程,或者它启动了一个后台进程就退出。由于容器服务是以“detach”方式运行容器,这样当PID1进程结束后就会导致整个容器退出。
 
比如,用户希望启动一个Ubuntu镜像。
 
由于Ubuntu 镜像缺省命令是“/bin/bash” 它在执行后会自动退出,我们需要将在服务的“command”在“更多设置”中将其修改为/bin/sh -c “while true; do sleep 10; done”这样的死循环;可以保证容器的持续运行。
 
建议用户在Docker镜像的Dockerfile中,应该设置正确的CMD或Entrypoint参数,来保证容器的正确执行。