如果 tzdata 被删除,Alpine Linux 时区不会保持不变

mbo*_*007 7 timezone date docker alpine

这曾经用于设置时区。我在 Alpine 3.9.4 上有一个容器,它可以工作:

RUN apk add --no-cache tzdata
ENV TZ America/Chicago
RUN apk del tzdata
Run Code Online (Sandbox Code Playgroud)

我现在正在使用 Alpine Linux v3.10.3 创建一个 Docker 容器,但它不再工作了。一位用户建议我需要复制到 /etc/localtime:

RUN apk add --no-cache tzdata
ENV TZ America/Chicago
RUN cp /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN apk del tzdata
Run Code Online (Sandbox Code Playgroud)

如果tzdata被删除,这些都不起作用。但是,如果tzdata不删除它们,它们会起作用。为什么是这样?

相关问题

vid*_*rlo 2

tzdata 包包含有关时区的信息。它告诉软件该区域 CEST 是 UTC+02:00,以及何时使用。

当您删除 tzdata 包时,剩下的只是一个带有字符串的变量。