- 컨테이너 재시작 시 로그 소실 문제 확인 - Docker 로그 드라이버 설정으로 해결 방안 제시 - Gateway, auth-server 등 주요 서비스 적용 필요 로컬 개발자 작업 필요: - docker-compose.yml에 logging 설정 추가 - 30개 파일 로테이션으로 로그 보존
1.3 KiB
1.3 KiB
Docker 컨테이너 로그 영구 보존 문제
작성일: 2025-08-28
작성자: 서버 관리자
문제 상황
- 증상: 컨테이너 재시작 시 모든 로그 소실
- 영향: Gateway, auth-server 등 주요 서비스 로그 추적 불가
- 발견: 9시 브리핑 실패 원인 추적 중 로그 부재로 분석 불가
원인 분석
- 현재 설정: Docker 기본 json-file 드라이버 (옵션 없음)
- 로그 위치:
/var/lib/docker/containers/{id}/(컨테이너 삭제 시 소실) - 볼륨 마운트:
./logs사용하지만 실제 로그는 stdout으로만 출력
해결 방안
즉시 적용 가능: Docker 로그 드라이버 설정
# docker-compose.yml에 추가
services:
gateway:
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "30" # 30개 파일 로테이션, 컨테이너 재시작해도 유지
장점
- 권한 문제 없음 (Docker 데몬이 root로 처리)
- 자동 로테이션
- 컨테이너 재시작/재생성 시에도 로그 보존
적용 대상
- robeing-gateway
- auth-server
- 기타 중요 서비스 컨테이너
참고
- Docker 데몬은 root 권한으로 실행되어 로그 파일 관리
docker logs명령으로 과거 로그 조회 가능- HDD 저장 원할 시 syslog 드라이버 고려