【问题标题】:Make Docker Logs Persistent使 Docker 日志持久化
【发布时间】:2021-12-07 04:22:35
【问题描述】:

我一直在使用 docker-compose 来设置一些 docker 容器。 我知道可以使用docker logs <container-name> 查看日志。

当容器运行时,所有日志都被打印到STDOUTSTDERR,容器中没有生成日志“文件”。

但是当它们各自的容器被docker-compose downdocker-compose rm等命令删除时,这些日志(从docker logs命令获得)被删除。

当容器被创建并再次启动时,会有一组新的日志。不存在上一次“运行”的日志。

我很好奇是否有办法以某种方式防止日志与其容器一起被移除。

理想情况下,即使容器被移除,我也希望保留所有以前的日志。

【问题讨论】:

    标签: docker logging docker-compose docker-logs


    【解决方案1】:

    我相信你有两条路可以走:

    让容器登录到文件

    您可以重新配置容器内的应用程序以写入日志文件而不是 stdout/stderr。正如您所说,即使容器被移除,您也希望保留日志。因此,请确保文件存储在(绑定)已安装的卷中。

    重新配置 docker 以存储日志

    将 docker 重新配置为use a different logging driver。这特别有用,因为它可以防止您更改每个容器。

    【讨论】:

      猜你喜欢
      • 2020-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多