No description
Find a file
2026-03-29 06:25:16 +02:00
agregarr Restructure into smaller docker compose files (#1) 2026-03-14 11:30:50 +00:00
arrs Replaced readarr with shelfmark 2026-03-29 06:25:16 +02:00
lingarr Restructure into smaller docker compose files (#1) 2026-03-14 11:30:50 +00:00
docker-compose.yml.backup Restructure into smaller docker compose files (#1) 2026-03-14 11:30:50 +00:00
manage-services.sh Restructure into smaller docker compose files (#1) 2026-03-14 11:30:50 +00:00
README.md Restructure into smaller docker compose files (#1) 2026-03-14 11:30:50 +00:00

Arr-Stack Docker Compose Services

This repository contains Docker Compose configurations for various media management services.

Directory Structure

Each service has its own subdirectory with a docker-compose.yml file:

  • gluetun/ - VPN service (must be started first)
  • qbittorrent/ - Torrent client (depends on gluetun)
  • prowlarr/ - Indexer manager + Flaresolverr (depends on gluetun)
  • radarr/ - Movie management (depends on gluetun)
  • sonarr/ - TV show management + Renamarr (depends on gluetun)
  • readarr/ - Book management (depends on gluetun)
  • lidarr/ - Music management (depends on gluetun)
  • bazarr/ - Subtitle management (depends on gluetun)
  • lingarr/ - Language/subtitle tool (standalone)
  • agregarr/ - List aggregator (standalone)

Important: Startup Order

Services using network_mode: 'container:gluetun' must start after gluetun is running.

Automatic Dependency Management

The manage-services.sh script now automatically handles gluetun dependencies:

  • When you start a service that depends on gluetun, gluetun will be started automatically if it's not running
  • The script waits for gluetun to be healthy before proceeding
  • You can simply run: ./manage-services.sh start and everything will start in the correct order

Manual startup sequence (if preferred):

  1. Start gluetun first:

    ./manage-services.sh start gluetun
    
  2. Wait for gluetun to be fully running (the script waits automatically)

  3. Start all other services:

    ./manage-services.sh start
    

What happens when gluetun restarts?

If gluetun restarts (manually or due to a crash) while other services are running:

  • Dependent containers lose network connectivity temporarily
  • They regain connectivity automatically when gluetun comes back up (usually within 10-30 seconds)
  • No restart is needed for most containers - they should reconnect automatically
  • If containers have issues, you can restart them individually:
    ./manage-services.sh restart radarr
    

Management Script

Use ./manage-services.sh to manage all services:

./manage-services.sh {start|stop|restart|status|pull|init} [service-name]

Commands:

  • start - Start all services (or specific service)
  • stop - Stop all services (or specific service)
  • restart - Restart all services (or specific service)
  • status - Show status of all services (or specific service)
  • pull - Pull latest images for all services (or specific service)
  • init - Create all bind mount directories

Examples:

# Initialize all directories
./manage-services.sh init

# Start all services
./manage-services.sh start

# Start only gluetun
./manage-services.sh start gluetun

# Check status of all services
./manage-services.sh status

# Stop a specific service
./manage-services.sh stop radarr

# Pull latest images for all services
./manage-services.sh pull

Network Configuration

Services are configured in two network modes:

Services using gluetun's network (VPN):

  • qbittorrent
  • prowlarr
  • flaresolverr
  • radarr
  • sonarr
  • renamarr
  • readarr
  • lidarr
  • bazarr

These services route all traffic through the gluetun VPN container using network_mode: 'container:gluetun'.

Standalone services (direct network):

  • lingarr (port 9876)
  • agregarr (port 7171)

NFS Volumes

The following NFS volumes are configured for Synology NAS access:

  • synology-video - /volume3/video
  • synology-video2 - /volume3/video2
  • synology-music - /volume3/music
  • synology-books - /volume3/books
  • synology-downloads - /volume3/QBittorrent

These are defined in each service's compose file that needs them.

Data Directories

All persistent data is stored in ../data/ relative to this directory:

  • ../data/gluetun/ - VPN configuration and data
  • ../data/qbittorrent/config/ - qBittorrent configuration
  • ../data/prowlarr/ - Prowlarr configuration (shared with Flaresolverr)
  • ../data/radarr/ - Radarr configuration
  • ../data/sonarr/ - Sonarr configuration
  • ../data/renamarr_config.yml - Renamarr configuration file
  • ../data/readarr/ - Readarr configuration
  • ../data/lidarr/config/ - Lidarr configuration
  • ../data/bazarr/ - Bazarr configuration
  • ../data/lingarr/ - Lingarr configuration
  • ../data/agregarr/ - Agregarr configuration
  • ../data/gluetun-ovpn.env - VPN credentials (referenced by gluetun)

Troubleshooting

Services fail to start with network errors

Ensure gluetun is running first:

docker ps | grep gluetun

If not running, start it:

./manage-services.sh start gluetun

Cannot access web UIs for services behind gluetun

All services using gluetun's network are accessed through gluetun's exposed ports:

NFS mount issues

Check that your Synology NAS is accessible at 10.0.1.2 and NFS exports are configured correctly.