在使用docker
時,其預設時區並非使用者所在時區,需要進行修改。對於單個容器,當前修改有幾種常見方式,比如直接對映宿主機時區到容器內,而本文介紹的為使用dockerfile
來直接修改映象時區。此處僅以常見幾個基礎容器為例來介紹。
from alpine:latest
# 安裝tzdata
run apk add --no-cache tzdata
# 設定時區
env tz="asia/shanghai"
docker build -t alpine:time .
docker run --rm -it alpine:time date
from ubuntu
# 設定localtime
# 此處需要優先設定localtime,否則安裝tzdata將會進入時區選擇
run ln -fs /usr/share/zoneinfo/asia/shanghai /etc/localtime
# 安裝tzdata
run apt-get update
&& apt-get install tzdata -y
&& apt-get clean
docker build -t ubuntu:time .
docker run --rm -it ubuntu:time date
此處不再列舉太多,主要解決方式為安裝tzdata
,然後修改時區。 docker時區設定
前幾天用docker部署mysql,在web服務將資料寫入mysql時,發現時間相差了8個小時,隨後在網上查詢解決辦法。若用docker run 命令來執行docker的話,可以直接通過 v,將宿主機的時間與本地時間繫結到容器中,這樣時間就會跟宿主機一樣,例子 docker run v etc ti...
docker容器時區問題
軟體開發經常遇到時區問題,國際化應用要處理的時區更為複雜一些,本文講述docker容器時區設定。當服務容器返回的時間都是少8小時,說明就是容器的時區設定出現問題。一般解決此類問題要麼設定一下容器的時區,要麼就是讓容器繼承宿主主機的時區,顯然繼承宿主主機的時區更好 可能說的有些絕對了 我們可以通過調整...
Docker時區timezone問題
docker容器內預設為utc時間 docker compose啟動時的設定 volumes etc localtime etc localtime ro etc timezone etc timezone ro 這個只在linux上有 ro 的意思是唯讀 read only 模式,可以保證其掛載卷...