services: web: image: ${REG:-acr.atyg.org}/library/custom-nas-web:latest restart: unless-stopped env_file: stack.env labels: - "traefik.enable=true" - "traefik.docker.network=traefik-net" - "traefik.http.routers.custom-nas.rule=Host(`${SYSTEM_DOMAIN:-nas.atyg.org}`)" - "traefik.http.routers.custom-nas.entrypoints=websecure" - "traefik.http.routers.custom-nas.tls=true" - "traefik.http.services.custom-nas.loadbalancer.server.port=80" expose: - "80" depends_on: - db networks: - default - traefik-net volumes: - spire-socket:/var/run/spire:ro db: image: ${REG:-acr.atyg.org}/library/postgres:18-alpine restart: unless-stopped environment: - POSTGRES_USER=${POSTGRES_USER:-nasadmin} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - POSTGRES_DB=${POSTGRES_DB:-custom_nas} volumes: - db-data:/var/lib/postgresql/data networks: - default volumes: db-data: driver: local driver_opts: type: none device: ${DB_DATA_PATH:-/var/data/custom-nas/db} o: bind spire-socket: name: spire-socket external: true networks: default: name: custom-nas-net traefik-net: external: true