Tiempo del contenedor acoplable 2 horas por detrás cuando TZ=CEST

Intento ejecutar un contenedor Docker con la misma zona horaria que mi host Docker. La zona horaria del host es CEST.

Cuando corro :

$ dateThu Apr 16 11:04:11 CEST 2020$ docker run -e TZ=CEST debian:buster dateThu Apr 16 09:04:14 CEST 2020

El contenedor está 2 horas detrás del anfitrión.

Por otro lado, si configuro TZ=Europe/Paris funciona como se esperaba :

$ docker run -e TZ=Europe/Paris debian:buster dateThu Apr 16 11:04:22 CEST 2020

¿Es un error o me estoy perdiendo algo?

La zona horaria está configurada de forma predeterminada y debe cambiarla manualmente.

Hay algunas opciones:

Configúrelo en el Dockerfile:

ENV TZ=America/Los_AngelesRUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

Uso de volúmenes para sincronizar con el host:

volumes:- "/etc/timezone:/etc/timezone:ro"- "/etc/localtime:/etc/localtime:ro"

o

docker run -v /etc/timezone:/etc/timezone:ro

Finalmente, configúrelo manualmente, pero si reinicia el contenedor, perderá la configuración:

docker run -e TZ=America/New_York ubuntu date

Después de algunas investigaciones, parece que CEST no es un valor válido para TZ variable de entorno. CEST es solo una versión visualizable de CET cuando la fecha actual ser verano.

De hecho, si configuro TZ a un valor obviamente inválido, da :

$ TZ=FOO dateFri Apr 17 14:07:56 FOO 2020

También tenga en cuenta que no tiene nada que ver con Docker.

Referencia :