{{tag>sysadmin docker timezone}}
====== Docker: Définir le fuseau horaire du conteneur ======
Plusieurs possibilités:
Définir le fuseau horaire (timezone) directement grâce à la variable d'environnement **TZ** dans le fichier docker-compose ou le Dockerfile.
Le conteneur doit cependant avoir installé le paquetage **tzdata**.
FROM debian:stretch-slim
ENV TZ="Europe/Paris"
RUN date
CMD /bin/sh
Dasn le docker-compose
version: "3.3"
services:
my_service:
image: my_image:version
restart: unless-stopped
environment:
- TZ=Europe/Paris
==== Utiliser le fuseau horaire de l’hôte ====
Si l'on souhaite que le conteneur utilise le même fuseau que l’Hôte, il est possible de monter en lecture les fichiers de configuration de l’Hôte via le fichier docker-compose:
version: "3.3"
services:
my_service:
...
volumes:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
==== Édition des fichiers dans le conteneur ====
# Ouvrir une console administrateur en mode interactif
docker-compose exec -u root dokuwiki /bin/bash
# Remplacer le fichier ou le lien symbolique /etc/localtime par le fichier timezone désiré
# présent dans le répertoire /usr/share/zoneinfo
rm -fr /etc/localtime
ln -s /usr/share/zoneinfo/Europe/Paris /etc/localtime
# Vérifier la modification
date
===== Références =====
* https://stackoverflow.com/questions/57607381/how-do-i-change-timezone-in-a-docker-container