# 1. 服务无法启动后不断重启应该如何调试 ## 1.1. 现象 ### 1.1.1. 容器状态不断变为initializing,又变成Running ![服务重启状态](images/_服务重启状态_1531390071_9043.png) ### 1.1.2. 日志中记录了很多重启的记录 ![重启日志](images/_重启日志_1531390319_9272.png) ## 1.2. 处理方法 ### 1.2.1. 启动 bash 模式 由于容器在不断重启,无法看容器里的详细错误,可以让容器直接不启动应用而直接进入 "bash" 模式。 ![点击升级按钮](images/_点击升级按钮_1531390639_26587.png) 点击 "升级按钮",在命令中输入bash,容器启动后只执行该命令 ![输入bash命令](images/_输入bash命令_1531390788_15573.png) ### 1.2.2. 去掉健康检查 进入健康检查标签,类型选择 "无",然后点击升级 ![去掉健康检查](images/_去掉健康检查_1531390960_11608.png) 等状态由Upgrading变为Upgraded ![升级中](images/_升级中_1531391122_28584.png) 如果加了bash都还是不断重启,可以先克隆一个服务后再按上面的步骤加bash。 > 注意:Clone 后的服务名,不能与原服务名相同 ![克隆服务](images/_克隆服务_1531397770_30655.png) ### 1.2.3. 查看容器日志 点击日志按钮 ![点击查看日志](images/_点击查看日志_1531396668_1697.png) 查看日志错误信息 ![查看日志错误信息](images/_查看日志错误信息_1531396693_7083.png) ### 1.2.4. 进入容器调试 点击执行命令行 ![点击执行命令行](images/_点击执行命令行_1531396857_13214.png) 根据dockerfile文件执行CMD命令,结合日志查看是哪步出错 根据各业务服务自己的日志信息调试 ### 1.2.5. 关闭 bash 模式 参照 1.2.1,将 bash 命令去掉,升级即可。