![如何将 systemd 输出记录到容器日志](https://linux22.com/image/792600/%E5%A6%82%E4%BD%95%E5%B0%86%20systemd%20%E8%BE%93%E5%87%BA%E8%AE%B0%E5%BD%95%E5%88%B0%E5%AE%B9%E5%99%A8%E6%97%A5%E5%BF%97.png)
我使用 podman 运行无根容器系统容器,即 systemd 作为入口点在容器内运行。
但是,我不明白如何获取容器的日志,即 systemd 本身的输出和日志进入 podman 的容器日志(它podman logs <containername>
给你什么)。
据我了解,podman 将入口点的 stdout/stderr 连接到容器日志 fd。但 systemd 不使用它,而是写入/dev/console
。
因此,如果我使用 运行容器,-t
我会在终端上看到 systemd 输出(因为 vt 被映射到容器中/dev/console
)。但无论有-t
没有,我都不会在容器日志中看到任何内容。似乎入口点 stdout 在容器中根本不可用,因为 systemd/dev/null
在启动期间将其自己的 stdin/stdout/stderr 重定向到。
我没有找到任何选项来让 systemd 写入 stdout 或让 podman 将其日志 fd 挂载到容器中,例如dev/console
。
我不敢相信这个问题还没有解决。有人知道怎样做我想做的事吗?