diff --git a/docker-compose/infrastructure.yml b/docker-compose/infrastructure.yml index 5abafd0..d1b1d02 100644 --- a/docker-compose/infrastructure.yml +++ b/docker-compose/infrastructure.yml @@ -74,24 +74,27 @@ services: # Issue tracked for resolution in future release # To enable: Uncomment service below and run: docker compose up -d watchtower # - # watchtower: - # image: containrrr/watchtower:1.7.1 - # container_name: watchtower - # restart: unless-stopped - # networks: - # - homelab-network - # volumes: - # - /var/run/docker.sock:/var/run/docker.sock - # environment: - # - DOCKER_API_VERSION=1.44 - # - WATCHTOWER_CLEANUP=true - # - WATCHTOWER_INCLUDE_RESTARTING=true - # - WATCHTOWER_SCHEDULE=0 0 4 * * * # 4 AM daily - # - WATCHTOWER_NOTIFICATIONS=shoutrrr - # - WATCHTOWER_NOTIFICATION_URL=${WATCHTOWER_NOTIFICATION_URL} - # labels: - # - "homelab.category=infrastructure" - # - "homelab.description=Automatic Docker container updates" + # Watchtower - Automatic container updates + # Monitors and updates Docker containers to latest versions + # Runs daily at 4 AM + watchtower: + image: containrrr/watchtower:latest + container_name: watchtower + restart: unless-stopped + networks: + - homelab-network + volumes: + - /var/run/docker.sock:/var/run/docker.sock + environment: + - DOCKER_API_VERSION=1.52 + - WATCHTOWER_CLEANUP=true + - WATCHTOWER_INCLUDE_RESTARTING=true + - WATCHTOWER_SCHEDULE=0 0 4 * * * # 4 AM daily + - WATCHTOWER_NOTIFICATIONS=shoutrrr + - WATCHTOWER_NOTIFICATION_URL=${WATCHTOWER_NOTIFICATION_URL:-} + labels: + - "homelab.category=infrastructure" + - "homelab.description=Automatic Docker container updates" # Dozzle - Real-time Docker log viewer # Access at: https://dozzle.${DOMAIN} diff --git a/docs/services-overview.md b/docs/services-overview.md index ecda5a1..ccf9089 100644 --- a/docs/services-overview.md +++ b/docs/services-overview.md @@ -11,11 +11,12 @@ This document provides a comprehensive overview of all 60+ pre-configured servic | ├─ [Traefik](service-docs/traefik.md) | Reverse proxy + SSL | ✓ | /opt/stacks/core/traefik | traefik.${DOMAIN} | | ├─ [Authelia](service-docs/authelia.md) | SSO authentication | - | /opt/stacks/core/authelia | auth.${DOMAIN} | | └─ [Gluetun](service-docs/gluetun.md) | VPN (Surfshark) | - | /opt/stacks/core/gluetun | No UI | -| **🔧 [infrastructure.yaml](../docker-compose/infrastructure.yml) (7+5)** | **Deployed: 7** | | | | +| **🔧 [infrastructure.yaml](../docker-compose/infrastructure.yml) (8+5)** | **Deployed: 8** | | | | | ├─ [Dockge](service-docs/dockge.md) | Stack manager (PRIMARY) | ✓ | /opt/stacks/infrastructure | dockge.${DOMAIN} | | ├─ [Pi-hole](service-docs/pihole.md) | DNS + Ad blocking | ✓ | /opt/stacks/infrastructure | pihole.${DOMAIN} | | ├─ [Dozzle](service-docs/dozzle.md) | Docker log viewer | ✓ | /opt/stacks/infrastructure | dozzle.${DOMAIN} | | ├─ [Glances](service-docs/glances.md) | System monitoring | ✓ | /opt/stacks/infrastructure | glances.${DOMAIN} | +| ├─ Watchtower | Auto container updates | - | /opt/stacks/infrastructure | No UI | | ├─ Code Server | VS Code in browser | ✓ | /opt/stacks/infrastructure | code.${DOMAIN} | | └─ [Docker Proxy](service-docs/docker-proxy.md) | Secure socket access | - | /opt/stacks/infrastructure | No UI | | **📦 [alternatives.yaml](../docker-compose/alternatives.yml) (6)** | **Not deployed** | | | | diff --git a/scripts/deploy-homelab.sh b/scripts/deploy-homelab.sh index a2255ba..24e6597 100755 --- a/scripts/deploy-homelab.sh +++ b/scripts/deploy-homelab.sh @@ -337,7 +337,7 @@ log_info " - Pi-hole (DNS Ad Blocker)" log_info " - Dozzle (Log Viewer)" log_info " - Glances (System Monitor)" log_info " - Docker Proxy (Security)" -log_info " Note: Watchtower temporarily disabled (Docker API compatibility)" +log_info " - Watchtower (Automatic Updates)" echo "" # Copy infrastructure stack