diff --git a/lxc1/p2-apps/smtp-relay.yml b/lxc1/p2-apps/smtp-relay.yml index b0f7c0f..534b502 100644 --- a/lxc1/p2-apps/smtp-relay.yml +++ b/lxc1/p2-apps/smtp-relay.yml @@ -1,14 +1,16 @@ services: smtp-relay: image: loganmarchione/docker-postfixrelay:latest - container_name: smtp_relay + container_name: smtp_relay_node${SMTP_NODE} restart: always ports: - - "25:25" + - "2525:25" environment: # 1. THE UPSTREAM SMARTHOST (Where mail goes) - RELAY_HOST=${RELAY_HOST} - RELAY_PORT=${RELAY_PORT} + - RELAY_USERNAME=${RELAY_USER} + - RELAY_PASSWORD=${RELAY_PASS} # 2. INTERNAL SECURITY (Who can send) # Allow your entire subnet (e.g., 192.168.1.0/24) to send without auth @@ -20,5 +22,13 @@ services: - MESSAGE_SIZE_LIMIT=10240000 volumes: - # Optional: Persist the mail queue so you don't lose alerts if the container restarts - - /docker/smtp-relay/queue:/var/spool/postfix + # QUEUE PERSISTENCE (Critical for HA) + # If Node 1 dies, Node 2 sees the pending mail queue on Gluster + - /shared/smtp-relay/queue:/var/spool/postfix + + networks: + - smtp_external # Attached to Traefik network just in case, or for internal access + +networks: + smtp_external: + external: true \ No newline at end of file diff --git a/lxc1/p2-apps/wud.yml b/lxc1/p2-apps/wud.yml index 2f98b1c..062c899 100644 --- a/lxc1/p2-apps/wud.yml +++ b/lxc1/p2-apps/wud.yml @@ -2,25 +2,26 @@ services: wud: image: fmartinou/whats-up-docker:latest - container_name: wud + container_name: wud-node${WUD_NODE_ID} user: "1000:994" cpus: 1.0 mem_limit: "1024m" mem_reservation: "256m" - ports: - - "3001:3000" + restart: unless-stopped networks: + - wud_external - wud_internal volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - - /docker/wud/etc:/etc/wud - - /docker/wud/var:/var/lib/wud - - /docker/wud-db:/var/lib/wud/db + - /shared/wud/etc:/etc/wud + - /shared/wud/var:/var/lib/wud environment: - TZ=America/Edmonton - WUD_WATCHER_LOCAL_SOCKET=/var/run/docker.sock + - WUD_AUTOUPDATE=${WUD_AUTOUPDATE} - WUD_WATCHER_LOCAL_WATCHBYDEFAULT=${WUD_WATCH} + - WUD_REGISTRIES_LSCR_ENABLED=${WUD_LSCR} - WUD_REGISTRY_LSCR_USERNAME=${WUD_LSCR_USER} - WUD_REGISTRY_LSCR_TOKEN=${GITHUB_PAT_TOKEN} @@ -30,4 +31,22 @@ services: - WUD_TRIGGER_SMTP_EMAIL_PORT=${WUD_SMTP_PORT} - WUD_TRIGGER_SMTP_EMAIL_TLS_ENABLED=${WUD_SMTP_TLS} - WUD_TRIGGER_SMTP_EMAIL_TLS_VERIFY=${WUD_SMTP_TLS_VER} - restart: unless-stopped + labels: + - "traefik.enable=true" + - "traefik.docker.network=wud_external" + + # Router + - "traefik.http.routers.wud.rule=Host(`${WUD_HOSTNAME}.${TRAEFIK_DNS_SUFFIX}`)" + - "traefik.http.routers.wud.entrypoints=websecure" + - "traefik.http.routers.wud.tls=true" + - "traefik.http.routers.wud.tls.certresolver=dns_resolver" + + # Service + - "traefik.http.services.wud.loadbalancer.server.port=3000" + +networks: + wud_internal: + driver: bridge + wud_external: + external: true +