관리 메뉴

공부 기록장 💻

[Docker] 컨테이너 시간대 KST로 변경하여 실행하기 본문

# Develop

[Docker] 컨테이너 시간대 KST로 변경하여 실행하기

dream_for 2025. 12. 2. 13:55

 

Docker 컨테이너가 서버의 KST 시간대를 상속하지 않고 UTC로 나오는 이유는 Docker의 설계 특성 때문이다.

서버가 KST 시간대를 따라도, 컨테이너는 항상 기본 UTC이다.

 

그렇기에 docker 환경에서 배포된 애플리케이션 서버 로그를 grafana로 확인 할 때,

9시간 이전의 시간으로 나타나는 경우가 종종 있었다.

 

이를 해결해보자!

 

docker 컨테이너 내부로 이동하여 시간대를 확인해보면, UTC 2025 시간대를 따르고 있는 것을 확인.

$ docker exec -it 4130fe1aac69 /bin/bash
root@4130fe1aac69:/opt/program# date
Tue Dec  2 04:44:52 UTC 2025

 

 

아래와 같이 docker 실행 명령어에 -e, -v 파라미터 값을 추가하면 된다.

# KST 시간대로 재실행
docker run -d \
  --name container_name> \
  -e TZ=Asia/Seoul \
  -v /etc/localtime:/etc/localtime:ro \
  <image_name>

 

혹은 docker-compose를 사용하는 경우라면

docker-compose.yml 을 아래와 같이 설정할 수 있다. 

services:
  flask-app:
    image: <image_name>
    environment:
      - TZ=Asia/Seoul
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /etc/timezone:/etc/timezone:ro
728x90
반응형
Comments