Voici le template générique que j’utilise pour l’ensemble des stacks Docker que je gère sous Portainer.
[Fichier]
version: "3.0"
services:
{nom du service}:
container_name: {nom du service}
hostname: {nom du service}
restart: unless-stopped
image: {nom de l'image Docker}:latest
stdin_open: true
tty: true
ports:
- "{port externe}:{port interne}"
expose:
- "{port interne}"
environment:
TZ: "Europe/Paris"
PUID: 1000
PGID: 1000
volumes:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- /opt/docker/{nom du service}/config:/config
- /opt/docker/{nom du service}/work:/work
NB :
L’utilisation du couple PUID/GUID me permet d’indiquer le premier utilisateur non système créé et de l’utiliser pour exécuter le service.
Le répertoire /config ne contient que les fichiers de configuration, tandis que le répertoire /work contient lui tous les fichiers de travail.