From 382699a3447ecda7d53e5a1c0411915ea56c0189 Mon Sep 17 00:00:00 2001 From: morgane Date: Thu, 4 Sep 2025 11:59:21 +0000 Subject: [PATCH] Actualiser docker/infra/docker-compose.yml --- docker/infra/docker-compose.yml | 88 ++++++++++++++++++++------------- 1 file changed, 53 insertions(+), 35 deletions(-) diff --git a/docker/infra/docker-compose.yml b/docker/infra/docker-compose.yml index 7cc6aca..42ea272 100644 --- a/docker/infra/docker-compose.yml +++ b/docker/infra/docker-compose.yml @@ -1,6 +1,36 @@ - +# Stack: Infrastructure Docker standardisée services: - # NPM – Nginx Proxy Manager + # Duplicati – sauvegardes + duplicati: + image: lscr.io/linuxserver/duplicati:latest + container_name: duplicati + restart: unless-stopped + networks: + - backend + - frontend + ports: + - "7604:8200" + volumes: + - /srv/docker/infra/duplicati/data:/data + - /srv/docker/infra/duplicati/log:/var/log/duplicati + - /srv/docker/infra/duplicati/conf:/config + - /srv/docker:/source/docker + - /opt/backup:/source/scripts + - /mnt/backup_syno/scripts/:/backups/scripts + - /mnt/backup_syno/containers/:/backups/docker + environment: + - PUID=${DUPLICATI_PUID} + - PGID=${DUPLICATI_PGID} + - TZ=${TZ} + - SETTINGS_ENCRYPTION_KEY=${DUPLICATI_KEY} + - DUPLICATI__WEBSERVICE_PASSWORD=${DUPLICATI_PASSWORD} + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8200"] + interval: 1m + timeout: 10s + retries: 3 + + # Nginx Proxy Manager – reverse proxy npm: image: jc21/nginx-proxy-manager:latest container_name: npm @@ -13,37 +43,17 @@ services: - "7601:443" # HTTPS - "7603:81" # Interface admin volumes: - - /srv/docker/infra/data/npm:/data - - /srv/docker/infra/logs/npm:/var/log/npm - - /srv/docker/infra/conf/npm:/etc/npm - - /srv/docker/infra/data/npm/letsencrypt:/etc/letsencrypt # certifs persistants - - # Duplicati – sauvegardes - - duplicati: - image: lscr.io/linuxserver/duplicati:latest - container_name: duplicati - restart: unless-stopped - networks: - - backend - - frontend - ports: - - "7604:8200" - volumes: - - /srv/docker/infra/data/duplicati:/data - - /srv/docker/infra/logs/duplicati:/var/log/duplicati - - /srv/docker/infra/conf/duplicati:/config - - /srv/docker:/source/docker - - /opt/backup:/source/scripts - - /mnt/backup_syno/scripts/:/backups/scripts - - /mnt/backup_syno/containers/:/backups/docker + - /srv/docker/infra/npm/data:/data + - /srv/docker/infra/npm/log:/var/log/npm + - /srv/docker/infra/npm/conf:/etc/npm + - /srv/docker/infra/npm/data/letsencrypt:/etc/letsencrypt environment: - - PUID=1000 - - PGID=1000 - - TZ=Etc/UTC - - SETTINGS_ENCRYPTION_KEY=Th2Z44cNA&28M#J&4g3wr73L9#ZG74f6@*tkdi - #- CLI_ARGS= #optional - - DUPLICATI__WEBSERVICE_PASSWORD=qTDKdabUESnxAg4XfU + - TZ=${TZ} + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:81"] + interval: 1m + timeout: 10s + retries: 3 # Redis – cache / file queue redis: @@ -52,14 +62,22 @@ services: restart: unless-stopped networks: - backend - volumes: - - /srv/docker/infra/data/redis:/data ports: - "6379:6379" + volumes: + - /srv/docker/infra/redis/data:/data + environment: + - TZ=${TZ} + + command: ["redis-server", "--requirepass", "${REDIS_PASSWORD}"] + healthcheck: + test: ["CMD", "redis-cli", "ping"] + interval: 1m + timeout: 10s + retries: 3 networks: frontend: external: true backend: external: true -