亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

time.LoadLocation 中出現未知時區 America/Los_Angeles 錯誤

time.LoadLocation 中出現未知時區 America/Los_Angeles 錯誤

Go
繁星點點滴滴 2023-08-07 15:11:15
即使通過 CoreOS 在 timedatectl list-timezones 時顯示 America/Los_Angeles ,為什么 Docker 會拋出錯誤未知時區 America/Los_Angeles?當 LoadLocation 調用在容器內運行時,是否還需要做其他事情或可以添加到 Docker 文件中的任何內容,以便它可以指向 zoneinfo ?LoadLocation 所需的時區數據庫可能并不存在于所有系統上,尤其是非 Unix 系統。LoadLocation 查找由 ZONEINFO 環境變量命名的目錄或未壓縮的 zip 文件(如果有),然后查找 Unix 系統上的已知安裝位置,最后查找 $GOROOT/lib/time/zoneinfo.zip。
查看完整描述

3 回答

?
哆啦的時光機

TA貢獻1779條經驗 獲得超6個贊

對于任何尋找答案的人來說,這對我有幫助。

將這兩行添加到 docker 文件中(如果是 2 階段構建,則為最終)

ADD https://github.com/golang/go/raw/master/lib/time/zoneinfo.zip /zoneinfo.zip
ENV ZONEINFO /zoneinfo.zip


查看完整回答
反對 回復 2023-08-07
?
四季花海

TA貢獻1811條經驗 獲得超5個贊

大衛·托馬斯的回答對我很有幫助:

RUN apk add --no-cache tzdata


查看完整回答
反對 回復 2023-08-07
?
炎炎設計

TA貢獻1808條經驗 獲得超4個贊

希望你們都安全!go test time我遇到了(或go test all)失敗的問題

panic: cannot load America/Los_Angeles for testing: unknown time zone America/Los_Angeles; you may want to use -tags=timetzdata

看起來測試試圖zoneinfo.zip從不存在的(硬編碼?)目錄中讀取文件/usr/lib/go-1.18/lib/time。我找到了一個解決方法并將其添加到我的Containerfile/中Dockerfile。如果您有更優雅的解決方案,請告訴我。??

使用版本:

  • go版本go1.18.1 linux/amd64

  • Ubuntu 22.04.1 LTS

Containerfile / Dockerfile 中的解決方法:

RUN mkdir -p /usr/lib/go-1.18/lib/time

ADD https://github.com/golang/go/raw/master/lib/time/zoneinfo.zip /usr/lib/go-1.18/lib/time/zoneinfo.zip

RUN chown -R openvscode-server:openvscode-server /usr/lib/go-1.18/lib/time


查看完整回答
反對 回復 2023-08-07
  • 3 回答
  • 0 關注
  • 281 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號