OpenSuse Tumbleweed + Docker 17.04。我使用以下命令创建了 /etc/docker/daemon.json:
{
"log-driver": "journald",
"log-opts": {
"labels": "my_test",
"env": "os,customer"
}
}
然后我启动了 docker daemon: systemctl start docker
。检查它:sudo docker info|grep Logg
并看到journald
当前的默认驱动程序。还给sudo docker inspect -f '{{.HostConfig.LogConfig.Type}}' MY-CONTAINER-ID
我看了journald
一遍。 Docker 运行为
sudo docker run -ti -v /sys/fs/cgroup:/sys/fs/cgroup --tmpfs /run/dbus --tmpfs /run/lock --cap-add=ALL MY-CONTAINER
然后我就用 SH 编辑了它。在 Docker 中,我使用以下命令创建了几条日志消息:
logger XXX
logger -p local0.notice XXX
# etc...
我在 Docker 日志中看到这些消息journalctl -n ...
。我想我也会在容器(“主机操作系统”)中找到这些日志消息:什么journalctl -n ...
也没有。与docker logs MY-CONTAINER-ID
-什么也没有。我想将消息从 Docker 记录到容器(“主机”)日志中。配置看起来正确,但缺少日志消息。有人可以帮助我 - OpenSuse 上的 Docker/我的配置有什么问题吗?
答案1
docker Journald 驱动程序捕获容器进程的 stdout 和 stderr。
另一方面,记录器命令将消息发送到/dev/log
.
编辑
这样做会很好logger -s