Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

Docker 容器與宿主機時間不同步?兩種修正時區的標準做法

編輯:關於 Linux

Docker 容器時間與宿主機相差 8 小時(或其他時差),主因是宿主機設定時區但容器未同步。本文提供兩種標準解決方案。

現象確認

  • 宿主機 date 顯示正確時間。
  • 容器內 date 相差 8 小時。

方案一:啟動容器時掛載 localtime(推薦,無侵入性)

docker run --name <容器名> -v /etc/localtime:/etc/localtime:ro ...

以唯讀方式掛載宿主機時區檔,容器即時同步,遷移部署極其方便。

方案二:在 Dockerfile 內建時區設定

  • Ubuntu/Debian 系:
    RUN echo "Asia/Shanghai" > /etc/timezone
  • CentOS/RHEL 系:
    RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

重新建置映像後,容器啟動即擁有正確時區。

依據部署習慣選擇:臨時容器用方案一,長期服務建議方案二納入映像標準化流程。

Copyright © Windows教程網 All Rights Reserved