错误未知时区America / Los_Angeles在时间。LoadLocation

时间:2019-11-28 17:57:58

标签: docker go time dockerfile

即使通过CoreOS在timedatectl list-timezones时显示America / Los_Angeles,为什么Docker也会抛出错误未知时区America / Los_Angeles

当LoadLocation在容器内运行时是否需要做其他事情,或者可以添加到Docker文件中以便指向zoneinfo的其他东西?

来自godoc

  

LoadLocation所需的时区数据库可能并非在所有系统上都存在,尤其是在非Unix系统上。 LoadLocation查找由ZONEINFO环境变量命名的目录或未压缩的zip文件(如果有),然后查找Unix系统上的已知安装位置,最后查找$ GOROOT / lib / time / zoneinfo.zip。

1 个答案:

答案 0 :(得分:0)

对于任何寻求答案的人来说,这对我都有帮助。

将这两行添加到docker file中,(如果是两阶段构建,则最终结束)

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