如何将docker镜像将自定义的应用日志输出到控制台

本文最后更新于 2024年5月16日。

如何将docker镜像的日志输出到标准输出/错误输出?(将自定义的应用日志输出到控制台)

对于一个nginx容器,如果要通过docker logs命令,直接查看容器的日志,该如何来操作?

非常的简单,就是将应用(nginx)生成的日志输出到标准输出或者错误输出。

那么,具体的实现是什么呢?

就是在制作镜像的时候,将应用日志与标准输出/错误输出设备进行关联,比如下面的nginx dockerfile中的命令:

forward request and error logs to docker log collector

RUN ln -sf /dev/stdout /var/log/nginx/access.log
&& ln -sf /dev/stderr /var/log/nginx/error.log

这样,就在制作镜像的时候,建立了软链接。

容器运行时,产生的日志,就会通过docker logs命令查看到了。

更重要的是,通过这种方法,任何的自定义的应用的日志,都可以链接到标准输出和标准错误输出。轻松的通过docker logs命令查看日志。