我有一个使用 nginx 的应用程序,该应用程序部署为 aws ecs 中的 docker 容器。 nginx 以不同的用户“iris”运行,与我的应用程序相同。 我的应用程序记录错误并输出到 /home/iris/var/log/nginx/access.log, error.log。 现在我需要将日志重定向到 /dev/stdout 和 /dev/stderr 以便 cloudwatch 可以流式传输这些日志文件。 我试过了
RUN ln -sf /dev/stdout /home/iris/var/log/nginx/access.log \
&& ln -sf /dev/stderr /home/iris/var/log/nginx/error.log
在我的图像文件中,但停止生成输出,因为我相信终端设备 /dev/stdout 由 root 用户拥有,而其他人没有写权限。 我也试过
usermod -a -G sudo iris
没有运气。任何帮助将不胜感激。
查看使用“root”启动 docker 容器然后降级到非特权用户时无法写入“/dev/stdout”或“/dev/stderr”
(我知道这是一篇旧帖子,但如果人们偶然发现他们可能会得到解决方案)