11

如果在其中运行的服务返回的退出代码不同于 docker-compose,是否可以在 docker-compose 中重新启动容器0?docker-compose.yml 选项restart: always不能那样工作。有什么方法可以解决它还是这是一个服务问题,我应该在容器内寻找答案?

我使用supervisord,但autorestart=true即使服务因退出代码而崩溃,添加选项也不起作用255-RUNNING_PID文件(由系统创建)没有被删除。

感谢您的回复。

4

1 回答 1

13

restart: always无论退出代码如何,都会重新启动容器,因此即使容器内运行的进程的退出代码是0. 我正在使用restart: on-failure它,它完全符合您的描述。它在进程的非零退出代码上重新启动容器。进程退出并且未重新启动后,您可以使用检查退出代码docker-compose ps

于 2016-07-14T17:06:15.440 回答