Skip to content

Container Timezone

需求:Container OS 時區為 UTC+0,需要設定為指定時區,如台灣的 UTC+8

解決方案:依據所使用的 Linux 版本,以不同的方式設定 Timezone

alpine

必須先安裝 tzdata,並執行相關設定

Dockerfile:

FROM apline:3.14.0

RUN apk --update add tzdata && \
    apk upgrade && \
    cp /usr/share/zoneinfo/Asia/Taipei /etc/localtime && \
    echo "Asia/Taipei" > /etc/timezone

非 alpine 版本

只需設定環境變數 TZ

Dockerfile:

FROM debian:buster

EVN TZ=Asia/Taipei

或者執行 Container 時直接設定

docker run -e "TZ=Asia/Taipei" debian:buster

Reference:

  1. 使用 Dockerfile 設定 Container 時區
  2. 【筆記】Docker Timezone 設定
  3. Explanation of the “--update add” command for Alpine Linux

Comments