도커에서는표준출력
과 표준오류
로 로그로 내보내는 것을 표준으로 해야한다.
어플리케이션단에서 내보내면 로깅드라이버가 로그를 쌓는다
이미지의 밑의 박스들이 로그파일의 종류들
// 전체 로그 확인
docker logs [container]
// 마지막 로그 10줄 확인
docker logs --tail 10 [container]
// 실시간 로그 스트림 확인
docker logs -f [container]
// 로그마다 타임스탬프 표시
docker logs -f -t [container]
cat /var/lib/docker/containers/${CONTAINER_ID}/${CONTAINER_ID}-json.log
MacOS M1 기준 호스트 운영체제의 로그 저장 경로는 다음과 같다
~/Library/Containers/com.docker.docker/Data/host
컨테이너 단위로 로그 용량 제한을 할 수 있지만, 도커 엔진에서 기본 설정을 진행할 수 도 있다. (운영환경에서 설정이 필수!)
docker run -d \
--log-driver=json=file \
--log-opt max-size=3m \
--log-opt max-file=5 \
nginx
최대크기는 3m, 최대 로그 파일은 5개로 로테이팅 시켜라 라는 뜻
끝