Wal*_*ker 1 time go docker dockerfile
即使通过 CoreOS 在 timedatectl list-timezones 时显示 America/Los_Angeles,为什么 Docker 会抛出错误unknown time zone America/Los_Angeles?
当 LoadLocation 调用在容器内运行或任何可以添加到 Docker 文件以便它可以指向 zoneinfo 的内容时,是否还需要做其他事情?
来自戈多克
LoadLocation 所需的时区数据库可能并不存在于所有系统上,尤其是非 Unix 系统。LoadLocation 查找由 ZONEINFO 环境变量命名的目录或未压缩的 zip 文件(如果有),然后查找 Unix 系统上的已知安装位置,最后查找 $GOROOT/lib/time/zoneinfo.zip。
对于任何寻找答案的人,这对我有帮助。
将这两行添加到 docker 文件,(如果是 2 阶段构建,则为最终版本)
ADD https://github.com/golang/go/raw/master/lib/time/zoneinfo.zip /zoneinfo.zip
ENV ZONEINFO /zoneinfo.zip
Run Code Online (Sandbox Code Playgroud)