본문 바로가기

TIL/잡다한

[Docker] Docker build시 timezone설정에서 멈출때

반응형

Dockerfile을 build할때 특정 명령어 수행시 timezone을 설정해야할때가 있는데, 이것을 해결하기 위해서는 Dockerfile에 아래와같은 두줄이 추가로 필요하다.

FROM ubuntu:20.04

ARG DEBIAN_FRONTEND=noninteractive
ENV TZ=Asia/Seoul

참고 자료 - https://stynxh.github.io/2020-07-26-set-timezone-when-ubuntu-docker-image-build/

  • DEBIAN_FRONTEND=noninteractive : tzdata 설치 시 사용자가 직접 timezone 설정을 할 수 있도록 입력할 수 있는 부분이 나오는데, 도커 이미지를 생성할 때는 입력을 할 수 없으므로 사용자의 입력 없이 넘어가기 위해 설정한다.
  • TZ=Asia/Seoul : tzdata 는 시스템 환경변수 TZ 의 값으로 timezone을 설정하기 때문에 해당 환경 변수를 우리가 원하는 지역으로 설정한다.
  • ARG 와 ENV : ARG 는 docker build 시에만 적용되는 변수 이며, ENV는 docker container 내부의 환경변수로 설정된다.
 
주의해야할점은, ARG, ENV변수에 대해서는 무조건 FROM 뒤에 와야한다.
반응형