dev/기타

Docker 로그 관리와 확인 방법 (윈도우)

wndud587 2024. 10. 8. 15:31
728x90

1. Docker 로그의 기본 개념

Docker에서 컨테이너의 로그는 애플리케이션이 출력하는 표준 출력(STDOUT) 및 표준 에러(STDERR)를 기록합니다. 이를 통해 애플리케이션의 실행 결과와 상태를 쉽게 추적할 수 있습니다. docker logs 명령어를 사용하면 특정 컨테이너의 로그를 확인할 수 있습니다.

2. Docker에서 로그 확인 방법

2.1. 실행 중인 컨테이너 로그 확인

특정 컨테이너의 로그를 확인하려면 다음 명령어를 사용합니다.

docker logs <container-id or container-name>

 

이 명령어로 현재 실행 중이거나 종료된 컨테이너의 로그를 확인할 수 있습니다.

2.2. 로그 출력 제어

- 마지막 n줄 확인: 특정 컨테이너 로그의 마지막 몇 줄만 보고 싶다면, --tail 옵션을 사용할 수 있습니다.

docker logs --tail 100 <container-id or container-name>

 

- 실시간 로그 스트리밍: -f 옵션을 사용하면 로그를 실시간으로 모니터링할 수 있습니다.

docker logs -f <container-id or container-name>

 

3. 로그 관리 및 회전 설정

Docker 로그가 무한정 쌓이면 디스크 공간을 많이 차지할 수 있습니다. 이를 방지하기 위한 로그 회전 설정 방법을 설명합니다.

3.1. 로그 회전 설정 (json-file 로그 드라이버 사용 시)

Docker Compose를 사용할 경우, 다음과 같이 로그 회전 설정을 할 수 있습니다.

logging:
  driver: "json-file"
  options:
    max-size: "10m"   # 로그 파일의 최대 크기를 10MB로 제한
    max-file: "5"     # 최대 5개의 로그 파일을 보관

4. 도커 로그 위치 확인하기

4.1. 명령어

컨테이너의 로그 파일 위치를 확인하려면 다음 명령어를 사용합니다.

docker inspect <container-id or container-name>

4.2. 도커 데스크탑

도커 데스크탑을 통해도 로그 파일 위치를 쉽게 확인할 수 있습니다.

도커 데스크탑에서 파일 위치 확인

5. 도커 데이터 진입

도커 데이터에 접근하려면 다음과 같은 명령어를 사용합니다.

 
docker run -v /:/data -it ubuntu /bin/bash
chroot /data
cd /var/lib/docker

도커 데이터 진입

 

6. 용량확인

로그 파일 용량을 확인하려면 다음 명령어를 사용합니다.

du -h *

용량 확인

 

7. Docker Compose 설정 후 빌드하기

아래는 Docker Compose 파일의 예시로, 로그 회전 설정을 포함하고 있습니다.

version: '3.8'

services:
  lotto-batch:
    image: lotto-batch
    build:
      context: .
      dockerfile: Dockerfile
    environment:
      - SPRING_PROFILES_ACTIVE=prod
      - TZ=Asia/Seoul
    ports:
      - "10020:10020"
    volumes:
      - D:/DOCKER/lotto:/tmp
    container_name: lotto-batch
    restart: always
    deploy:
      resources:
        limits:
          memory: 1G
        reservations:
          memory: 256M           # 최소 보장 메모리
    logging:
      driver: "json-file"
      options:
        max-size: "5m"  # 로그 파일 최대 크기 5MB로 제한
        max-file: "2"    # 최대 2개의 로그 파일 보관

8. 확인

로그 회전 설정이 적용되지 않은 경우와 설정이 적용된 경우의 차이를 확인할 수 있습니다. 설정이 완료된 후에는 로그의 크기를 효과적으로 관리할 수 있어 디스크 공간을 절약할 수 있습니다.

로그 위치가 설정 안되어 있는 이미지
설정 안되어있음(기본값)
로그의 위치가 설정되어있음
설정 함

 

 

로그 확인

 

 

 

* 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

728x90