# Shared storage configuration x-shared-storage: &shared_data_volume type: bind source: /mnt/machine-spirit/data/media-manager target: /data bind: create_host_path: true # Service-specific volume configurations x-volume-configs: jellyseerr: &jellyseerr_volumes - type: bind source: /mnt/machine-spirit/configs/jellyseerr target: /app/config bind: create_host_path: true prowlarr: &prowlarr_volumes - type: bind source: /mnt/machine-spirit/configs/prowlarr target: /config bind: create_host_path: true - <<: *shared_data_volume sonarr: &sonarr_volumes - type: bind source: /mnt/machine-spirit/configs/sonarr target: /config bind: create_host_path: true - <<: *shared_data_volume radarr: &radarr_volumes - type: bind source: /mnt/machine-spirit/configs/radarr target: /config bind: create_host_path: true - <<: *shared_data_volume services: jellyseerr: image: fallenbagel/jellyseerr:latest container_name: jellyseerr ports: ["5055:5055"] environment: - PUID=${PUID} - PGID=${PGID} - TZ=${TZ} volumes: *jellyseerr_volumes networks: - media-net extra_hosts: - "host.docker.internal:host-gateway" healthcheck: test: ["CMD", "wget", "-qO-", "http://localhost:5055"] interval: 1m retries: 3 restart: unless-stopped dns: - 1.1.1.1 - 8.8.8.8 prowlarr: image: lscr.io/linuxserver/prowlarr:latest container_name: prowlarr ports: ["9696:9696"] volumes: *prowlarr_volumes environment: - PUID=${PUID} - PGID=${PGID} - TZ=${TZ} networks: - media-net extra_hosts: - "host.docker.internal:host-gateway" healthcheck: test: [ "CMD", "curl", "-f", "http://localhost:9696" ] interval: 1m retries: 3 restart: unless-stopped dns: - 1.1.1.1 - 8.8.8.8 sonarr: image: lscr.io/linuxserver/sonarr:latest container_name: sonarr ports: ["8989:8989"] volumes: *sonarr_volumes environment: - PUID=${PUID} - PGID=${PGID} - TZ=${TZ} networks: - media-net extra_hosts: - "host.docker.internal:host-gateway" healthcheck: test: [ "CMD", "curl", "-f", "http://localhost:8989" ] interval: 1m retries: 3 restart: unless-stopped dns: - 1.1.1.1 - 8.8.8.8 radarr: image: lscr.io/linuxserver/radarr:latest container_name: radarr ports: ["7878:7878"] volumes: *radarr_volumes environment: - PUID=${PUID} - PGID=${PGID} - TZ=${TZ} networks: - media-net extra_hosts: - "host.docker.internal:host-gateway" healthcheck: test: [ "CMD", "curl", "-f", "http://localhost:7878" ] interval: 1m retries: 3 restart: unless-stopped dns: - 1.1.1.1 - 8.8.8.8 ombi: image: lscr.io/linuxserver/ombi:latest container_name: ombi environment: - PUID=${PUID} - PGID=${PGID} - TZ=${TZ} volumes: - /mnt/machine-spirit/configs/ombi:/config ports: ["3579:3579"] networks: - media-net extra_hosts: - "host.docker.internal:host-gateway" healthcheck: test: [ "CMD", "curl", "-f", "http://localhost:3579" ] interval: 1m retries: 3 restart: unless-stopped dns: - 1.1.1.1 - 8.8.8.8 networks: media-net: driver: bridge labels: - "com.media-stack.network=main" - "com.media-stack.description=Primary network for *arr stack communication with IPv6"