Docker 容器在 GCE 上循环重启
Docker container restarting in a loop on GCE
我已经正确部署了一个 Docker 容器,它运行一个 Python 脚本,该脚本从互联网上获取一些数据并将其放入 BigQuery 中。该容器在我的机器和我配置的 GCE 实例上运行良好。
现在,大部分情况下一切正常,但我不明白为什么 docker 容器 总是 在退出后重新启动(显然是正确的)。在这种情况下,日志似乎毫无用处,因为没有任何错误。我目前的预感是某些东西正在无声地失败,迫使实例重新启动。
有没有办法找出给定 Docker 容器的重启原因?
到目前为止尝试过的东西
- 我尝试通过以下方式打印容器的退出代码。无论那些重启周期如何,结果始终为 0。
while true
do
docker inspect my_container --format='{{.State.ExitCode}}'
sleep 1
done
Google Cloud documentation 为您提供了不同的方式来查看容器相关日志,包括容器启动和停止。
无论如何,我认为您的容器没有问题:默认情况下,Compute Engine 将在退出时重启容器,但您可以根据需要指定不同的重启策略。请参阅 relevant documentation.
我已经正确部署了一个 Docker 容器,它运行一个 Python 脚本,该脚本从互联网上获取一些数据并将其放入 BigQuery 中。该容器在我的机器和我配置的 GCE 实例上运行良好。
现在,大部分情况下一切正常,但我不明白为什么 docker 容器 总是 在退出后重新启动(显然是正确的)。在这种情况下,日志似乎毫无用处,因为没有任何错误。我目前的预感是某些东西正在无声地失败,迫使实例重新启动。
有没有办法找出给定 Docker 容器的重启原因?
到目前为止尝试过的东西
- 我尝试通过以下方式打印容器的退出代码。无论那些重启周期如何,结果始终为 0。
while true
do
docker inspect my_container --format='{{.State.ExitCode}}'
sleep 1
done
Google Cloud documentation 为您提供了不同的方式来查看容器相关日志,包括容器启动和停止。
无论如何,我认为您的容器没有问题:默认情况下,Compute Engine 将在退出时重启容器,但您可以根据需要指定不同的重启策略。请参阅 relevant documentation.