win10運行docker修改時區時間

今天在本地測試上傳oss時報錯:

RequestTimeTooSkewed: The difference between the request time and the current time is too large. RequestId: 

網上說是服務器時間和阿里的時間不一致,相併超過15分鐘,然後看了一下本地運行php的docker,時間果然不對。 先是修改Dockerfile加入:

RUN rm /etc/localtime
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone

然後修改docker-compose.yml,加上下面一段:

    environment:
      TZ: Asia/Shanghai
    privileged: true  

構建後發現時區已經改了,但時間還是不對,於是手動更改時間:

date -s 17:42:30

再執行date查看:

# date
Thu Feb 17 17:42:35 CST 2022

注:compose配置文件中必須加上privileged: true ,否則會報沒有權限的提示

如果一直被更新回去,也可以設置crontab

*/30 * * * * /usr/sbin/ntpdate 162.159.200.123
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章