services: server: image: ghcr.io/nmemmert/shpm:main restart: unless-stopped networks: - luma_net ports: - "3700:3000" environment: PORT: "3000" DB_PATH: /data/library.db POSTER_DIR: /data/posters MUSIC_DIR: /music NODE_ENV: production volumes: - type: volume source: luma_data target: /data - type: bind source: /media/Plex/Gallery target: /photos - type: bind source: /DATA/Media/Music target: /music read_only: true healthcheck: test: ["CMD", "wget", "-qO-", "http://localhost:3000/api/health"] interval: 30s timeout: 5s retries: 3 start_period: 10s worker: image: ghcr.io/nmemmert/shpm:main restart: unless-stopped networks: - luma_net command: ["node", "worker/index.js"] environment: DB_PATH: /data/library.db POSTER_DIR: /data/posters PHOTO_DIR: /photos volumes: - type: volume source: luma_data target: /data - type: bind source: /media/Plex/Gallery target: /photos read_only: true depends_on: server: condition: service_healthy networks: luma_net: external: true volumes: luma_data: