找出docker容器为何不断重新启动的简单方法

找出docker容器为何不断重新启动的简单方法,docker,docker-compose,Docker,Docker Compose,我有一个docker容器,它一直在重新启动 Name Command State Ports -------------------------------------------------------------------------------------------------------- wenotecloudstorage_flask_1 /

我有一个docker容器,它一直在重新启动

           Name                         Command                 State                  Ports
--------------------------------------------------------------------------------------------------------
wenotecloudstorage_flask_1   /bin/sh -c /usr/local/bin/ ...   Restarting
wenotecloudstorage_nginx_1   nginx -g daemon off;             Up           0.0.0.0:2083->443/tcp, 80/tcp
我希望我有一个简单的方法,看看错误日志为什么它是重新启动

我继续读下去

我试着

有没有简单的方法,我可以找出docker容器不断重新启动的原因?

不要使用“docker日志”。使用“docker compose logs flask”查看该容器的日志。 根据您的选择:

docker-compose logs -f --tail=50 flask
您看到的错误是因为正常的“docker日志”正在尝试读取日志,但容器已经死亡。Docker compose处理得更好

如果它不在日志中,那么你就必须深入挖掘应用程序的配置。但我敢打赌,你会看到一条很好的日志消息,它会把你带到正确的方向。

不要使用“docker日志”。使用“docker compose logs flask”查看该容器的日志。 根据您的选择:

docker-compose logs -f --tail=50 flask
您看到的错误是因为正常的“docker日志”正在尝试读取日志,但容器已经死亡。Docker compose处理得更好


如果它不在日志中,那么你就必须深入挖掘应用程序的配置。但我敢打赌,你会看到一条很好的日志消息,它会把你带到正确的方向。

我会说附加到docker,这会给你信息,当然也会检查docker的日志。你是说执行
docker attach wenotecloudstorage\u flask\u 1
?但是,这仍然会给我错误
您无法连接到正在重新启动的容器,请等待它运行
您可以停止容器,如果主容器进程立即退出,他们将启动容器而不进行分离(因为启动配置错误;因为您尝试启动后台进程)这在理论上可能导致这种情况;您可以尝试在不使用
-d
选项的情况下运行它来获取实时日志。看到实际的
docker compose.yml
可能会给出一些提示。@CheokYanCheng还确保您没有将
重新启动
策略传递给您运行的容器。我会说附加到docker,这将为您提供信息,当然还要检查docker的日志。你的意思是做
docker附加wenotecloudstorage\u flask\u 1
?但是,这仍然会给我错误
您无法连接到正在重新启动的容器,请等待它运行
您可以停止容器,如果主容器进程立即退出,他们将启动容器而不进行分离(因为启动配置错误;因为您尝试启动后台进程)这在理论上可能导致这种情况;您可以尝试在不使用
-d
选项的情况下运行它来获取实时日志。看到实际的
docker compose.yml
可能会给出一些提示。@CheokYanCheng还确保您没有将
重启
策略传递给您运行的容器。