首页 > 解决方案 > Tomcat docker 容器日志在几个小时后挂起

问题描述

我正在使用 tomcat:9.0-jre8-alpine 映像来部署我的应用程序。当我运行以下命令时,它可以完美运行并显示日志。

docker logs -f <containername>

但是几个小时后,日志被击中,无论我们在应用程序上执行什么操作,它都不会显示新日志。容器按预期运行,VM 上有足够的内存和磁盘空间。

注意:我在 3 个不同的虚拟机上运行同一个容器。只有 1 个虚拟机有这个问题。

如何调试/解决问题?

标签: dockerspring-mvcweb-applicationstomcat9

解决方案


  1. 检查你的 docker 版本,是不是太旧了,你可能会遇到 https://github.com/moby/moby/issues/35332这是由 github.com/fsnotify/fsnotify pkg 引起的死锁。fsnotify 公关

  2. 检查 /etc/docker/daemon.json 中的守护进程配置以获取 docker 日志配置。您需要检查容器配置docker inspect以查看日志选项。

如果您使用 json-file 日志格式,有时我会尝试查看 /var/lib/docker/containers/Container-ID/Container-ID.json 以查看日志。

如果你使用 journald,你可能会在 /var/log/messages 中找到日志


推荐阅读