Docker 啟動後設定容器時區

之前有寫過一篇: Docker 啟動時設定時區,那篇文章需要在啟動時設定,那如果容器已經被建立,該怎麼變更時區呢?

進入容器
這裡示範的容器是 mssql/server:2017 ,容器名稱為 mssql
    
docker exec -it mssql bash
    

安裝 tzdata
    
apt-get update && apt-get install -y tzdata
    

寫入時區設定
    
echo "Asia/Taipei" > /etc/timezone && ln -sf /usr/share/zoneinfo/Asia/Taipei /etc/localtime
    

離開並重新啟動容器後再次進入容器:
    
exit
docker restart mssql
docker exec -it mssql bash
    

確認包含時區的時間是否正確:
    
$ date
Mon May  8 23:10:49 CST 2023
    

確認 UTC 時間是否正確:(代表只有改時區而沒有動到時間)
    
date -u
Mon May  8 15:10:54 UTC 2023
    

留言