- collect-compose.yml: Fetches all compose files from docker_hosts - collect-env-templates.yml: Creates .env.example with secrets redacted - deploy-compose.yml: Pushes compose files to hosts (with optional restart) - diff-compose.yml: Shows differences before deploying Collected 23 compose files from 7 hosts: - replicant: 12 stacks (arr-stack, mealie, portainer, etc) - docker666: 4 stacks (unifi, gluetun, uptime, utils) - databases: 3 stacks (postgres, forgejo, utils) - download-stack: 2 stacks (download-stack, utils) - media-transcode: 1 stack (utils) - network-services: 1 stack (utils) - immich: 1 stack (utils)
60 lines
1.7 KiB
YAML
60 lines
1.7 KiB
YAML
services:
|
|
autoheal:
|
|
image: willfarrell/autoheal:latest
|
|
container_name: autoheal
|
|
restart: unless-stopped
|
|
environment:
|
|
- AUTOHEAL_CONTAINER_LABEL=autoheal
|
|
- AUTOHEAL_INTERVAL=5
|
|
- AUTOHEAL_START_PERIOD=0
|
|
- AUTOHEAL_DEFAULT_STOP_TIMEOUT=10
|
|
- WEBHOOK_URL=https://ntfy.3ddbrewery.com/autoheal-proxmox?title=${HOST_NAME}
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
labels:
|
|
- "autoheal=true"
|
|
|
|
watchtower:
|
|
image: containrrr/watchtower:latest
|
|
container_name: watchtower
|
|
restart: unless-stopped
|
|
environment:
|
|
- WATCHTOWER_LABEL_ENABLE=true
|
|
- WATCHTOWER_CLEANUP=true
|
|
- WATCHTOWER_INCLUDE_RESTARTING=true
|
|
- WATCHTOWER_INCLUDE_STOPPED=false
|
|
- WATCHTOWER_POLL_INTERVAL=3600
|
|
- WATCHTOWER_TIMEOUT=30s
|
|
- WATCHTOWER_NO_RESTART=false
|
|
- WATCHTOWER_NOTIFICATIONS=shoutrrr
|
|
- WATCHTOWER_NOTIFICATION_URL=ntfy://ntfy.3ddbrewery.com/watchtower-proxmox?title=${HOST_NAME}
|
|
- DOCKER_API_VERSION=1.44
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
labels:
|
|
- "autoheal=true"
|
|
- "com.centurylinklabs.watchtower.enable=true"
|
|
|
|
docker-proxy-portainer:
|
|
image: ghcr.io/tecnativa/docker-socket-proxy:latest
|
|
container_name: docker-proxy-portainer
|
|
restart: unless-stopped
|
|
ports:
|
|
- "${HOST_IP}:2376:2375"
|
|
environment:
|
|
- CONTAINERS=1
|
|
- IMAGES=1
|
|
- NETWORKS=1
|
|
- VOLUMES=1
|
|
- INFO=1
|
|
- EVENTS=1
|
|
- PING=1
|
|
- VERSION=1
|
|
- POST=1
|
|
- EXEC=1
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
cap_drop:
|
|
- ALL
|
|
security_opt:
|
|
- no-new-privileges:true
|