访问正在运行的docker容器的日志文件夹

假设我的应用程序在文件夹/ app / logs /中生成日志。 为了方便起见,生成了多个日志文件(基于不同的运行时上下文),以便更好地监控。 如果我使用Docker容器化我的应用程序,如何访问日志文件夹中运行时生成的日志?

我的应用程序没有nohuptypes的日志logging,当然

docker logs -f <container-id> 

似乎没有工作。

docker logs只会显示正在运行的进程的stderr和stdout。

集装箱可以与集中的日志系统一起工作,因为它适合短暂的/可扩展的devise。 使用系统日志 , loggly , graylog , logstash , fluentd等将docker 日志通过networking推送到服务器 。 在一个位置访问所有的应用程序和上下文日志。

如果这似乎太多了…

您可以直接从主机访问日志

 docker exec <container-id> cat /apps/logs/context.log 

您可以login到共享数据卷

 docker volume create logs docker run -v logs:/apps/logs <image> 

您可以login到主机目录

 docker run -v /apps/logs:/apps/logs <image>