jade-devlab 님의 블로그

[Docker] 서버 도커 로그 관리 하기 본문

back-end/기타

[Docker] 서버 도커 로그 관리 하기

bibi-jade 2025. 8. 6. 06:27

* 프로젝트를 진행하며 공부하고 찾아본 내용을 정리한 글입니다..!

서버에 도커를 사용해 어플리케이션을 실행할 때 

 

도커 로그가 해당 경로 아래에 저장이 된다

/var/lib/docker/containers/컨테이너ID/컨테이너ID-json.log

 

이 로그가 계속 쌓이고 쌓여서 서버 디스크 용량을 과도하게 잡아먹어 서버를 죽인다

 

node.js 기반 프로젝트를 개발하던 중, 6일치 로그가 쌓여서 서버가 죽어 

프론트에서 502 bad gateway 에러를 띄웠다.. 

 

Aws 프리티어 8기가 t2.micro 인스턴스를 사용하므로 도커 로그 관리의 필요성을 느꼈다 !! 

 


1. docker-compose logging 추가 - logging 옵션을 추가할 수 있다!

logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"

 

  • logging.driver : 로그를 어떤 식으로 저장할 지 기록하는 항목, json-file 이 기본 드라이버로, json 파일로 로그를 저장한다
  • logging.options 
    • max-size: 하나의 로그 파일 크기 제한 ( "10m"은 10MB ).
    • max-file: 파일을 몇 개까지 보관할지 -> 오래된 파일부터 삭제됨 

 

Redis 는 5MB에 2개, 앱 서버 어플리케이션은 10MB에 3개로 설정해두었다..! 

 

 

2. 도커 로깅 시스템 사용

도커 컨테이너 내부에서 관리되는 도커 로그를 외부에서 수집하여 분석/ 시각화/ 보관 및 모니터링 할 수 있다고 한다..!

 

Promtail+Loki, ELK 등이 있다!!

지금은 간단한 로그 관리 설정만 적용했지만, 점점 시스템이 복잡해질수록 로그 수집 및 시각화 환경도 구축해볼 계획입니다.

아직 프로젝트의 초기단계이어서 도커 로그의 저장 방식에 대해서 팀원들과 상의한 다음에 진행해보려고 합니다!!!

 

 

 

[ 참고 자료 ] : 

1. https://pulpul8282.tistory.com/332 - 도커 컴포즈 로깅 방식

 

Docker에서 log관리 안하면 디스크가 터진다.

보통 우리는 도커 이미지로 애플리케이션을 배포한다. 그리고 애플리케이션 로그를 확인할땐 도커 명령어로 확인한다. docker logs 도커에서 확인하는 수많은 로그들은 과연 어디에 저장되는 것일

pulpul8282.tistory.com

2. https://a3magic3pocket.github.io/posts/elk-container-example/

 

docker container 환경에서 ELK(Elasticsearch, Logstash, Kibana)로 로깅해보기

개요 application server 및 ELK를 docker container로 올려두고 로깅해본다.

a3magic3pocket.github.io

3. https://zerobin-dev.tistory.com/151

 

[Window] Docker Compose 로 Grafana, Loki, Promtail 구성

Windows에서 Docker Compose를 이용해 Grafana, Loki, Promtail을 구성하는 방법에 대해 알아보겠습니다. 1. Docker Desktop 설치https://docs.docker.com/desktop/install/windows-install/위 URL로 접속하여 윈도우용 설치파일을

zerobin-dev.tistory.com

 

'back-end > 기타' 카테고리의 다른 글

[nginx] 413 Request Entity too large 에러 고치기  (2) 2025.08.18