如何将 systemd 输出记录到容器日志

如何将 systemd 输出记录到容器日志

我使用 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

我不敢相信这个问题还没有解决。有人知道怎样做我想做的事吗?

相关内容