明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

Docker容器與宿主機(jī)時(shí)間不同步的處理方法

[摘要]很多用戶在使用了Docker以后都反映遇到Docker容器的時(shí)間和宿主機(jī)時(shí)間不同步的問(wèn)題。其實(shí)這主要是因?yàn)樗拗鳈C(jī)設(shè)置了時(shí)區(qū),但是Docker容器并沒(méi)有設(shè)置,這才導(dǎo)致它們時(shí)間不同步。下面小編就給大家分...

  很多用戶在使用了Docker以后都反映遇到Docker容器的時(shí)間和宿主機(jī)時(shí)間不同步的問(wèn)題。其實(shí)這主要是因?yàn)樗拗鳈C(jī)設(shè)置了時(shí)區(qū),但是Docker容器并沒(méi)有設(shè)置,這才導(dǎo)致它們時(shí)間不同步。下面小編就給大家分享下Docker容器和宿主機(jī)時(shí)間不同步的解決辦法。

Docker容器和宿主機(jī)時(shí)間不同步的解決辦法

  接下來(lái),我們通過(guò)在在宿主機(jī)和容器里分別執(zhí)行date命令來(lái)看下實(shí)際的情況。

  在宿主機(jī)執(zhí)行date命令的結(jié)果:

Docker容器和宿主機(jī)時(shí)間不同步的解決辦法

  進(jìn)入到容器里,再執(zhí)行date命令的結(jié)果:

  docker exec -it 《containerid》 /bin/sh

  date

  執(zhí)行后的結(jié)果為:

Docker容器和宿主機(jī)時(shí)間不同步的解決辦法

  從截圖來(lái)看,我們發(fā)現(xiàn)相差了8個(gè)小時(shí)。那么如何解決這個(gè)問(wèn)題呢?目前有兩種思路供參考。

  創(chuàng)建容器的時(shí)候指定啟動(dòng)參數(shù),自動(dòng)掛載localtime文件到容器內(nèi)

  docker run --name 《name》 -v /etc/localtime:/etc/localtime:ro ...

  把時(shí)區(qū)設(shè)置加入到Dockerfile中

  # Ubuntu

  RUN echo “Asia/shanghai” 》 /etc/timezone;

  # CentOS

  RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

  以上就是Docker容器和宿主機(jī)時(shí)間不同步的解決辦法,這個(gè)問(wèn)題主要是由于Docker容器沒(méi)有設(shè)置時(shí)間導(dǎo)致的,因此用戶只需根據(jù)上面的介紹的方法進(jìn)行設(shè)置即可。


Linux是一套免費(fèi)使用和自由傳播的類Unix操作系統(tǒng)