오픈수세 텀블위드 + 도커 17.04. 다음 명령을 사용하여 /etc/docker/daemon.json을 만들었습니다.
{
"log-driver": "journald",
"log-opts": {
"labels": "my_test",
"env": "os,customer"
}
}
그런 다음 docker 데몬을 시작했습니다 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 ...
. 컨테이너("호스트 OS")에서도 다음 로그 메시지를 찾을 수 있을 것 같습니다. Nothing journalctl -n ...
. 와 docker logs MY-CONTAINER-ID
-아무것도 없습니다. Docker의 메시지를 컨테이너("호스트") 로그에 기록하고 싶습니다. 구성은 올바른 것 같지만 로그 메시지가 누락되었습니다. 누군가 나를 도와줄 수 있습니까? OpenSuse의 Docker/내 구성에 문제가 있습니까?
답변1
docker Journald 드라이버는 컨테이너 프로세스의 stdout 및 stderr을 캡처합니다.
반면에 로거 명령은 메시지를 /dev/log
.
편집하다
이렇게 하면 좋을 것 같아logger -s