84 lines
2.1 KiB
YAML
84 lines
2.1 KiB
YAML
# Stack: Infrastructure Docker standardisée
|
||
services:
|
||
# 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
|
||
restart: unless-stopped
|
||
networks:
|
||
- frontend
|
||
- backend
|
||
ports:
|
||
- "7602:80" # HTTP
|
||
- "7601:443" # HTTPS
|
||
- "7603:81" # Interface admin
|
||
volumes:
|
||
- /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:
|
||
- TZ=${TZ}
|
||
healthcheck:
|
||
test: ["CMD", "curl", "-f", "http://localhost:81"]
|
||
interval: 1m
|
||
timeout: 10s
|
||
retries: 3
|
||
|
||
# Redis – cache / file queue
|
||
redis:
|
||
image: redis:7
|
||
container_name: redis
|
||
restart: unless-stopped
|
||
networks:
|
||
- backend
|
||
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
|