my-homelab-configs/infra/arr-stack
juvdiaz 84855cd927 Add generated docs config 2026-06-27 15:42:59 -06:00
..
docs Add generated docs config 2026-06-27 15:42:59 -06:00
examples Add external arr compose stack 2026-06-27 09:33:43 -06:00
.env.example Add DNS defaults to arr stack 2026-06-27 14:10:17 -06:00
README.md Add generated docs config 2026-06-27 15:42:59 -06:00
bootstrap.sh Add external arr compose stack 2026-06-27 09:33:43 -06:00
configure-arr.py Add external arr compose stack 2026-06-27 09:33:43 -06:00
docker-compose.yml Make arr service DNS explicit 2026-06-27 14:13:18 -06:00

README.md

External ARR Stack

This Docker Compose stack runs the media-management apps outside Kubernetes on the Debian host. It is not called by jeannie and is not part of the homelab OpenTofu/Argo pipeline.

Services:

  • Prowlarr: 9696
  • Radarr: 7878
  • Sonarr: 8989
  • qBittorrent: 8080
  • FlareSolverr: 8191
  • Kapowarr: 5656
  • Suwayomi: 4567
  • Maintainerr: 6246

Persistent storage defaults to /data/arr.

Containers use explicit DNS servers from .env through ARR_DNS_PRIMARY and ARR_DNS_SECONDARY. Defaults are 1.1.1.1 and 8.8.8.8; set them to your router, Pi-hole, or Tailscale DNS addresses if needed.

Start

cd infra/arr-stack
cp .env.example .env
./bootstrap.sh

The helper creates /data/arr, fixes ownership for PUID/PGID, and starts the Compose stack.

Manage

docker compose --env-file .env -f docker-compose.yml ps
docker compose --env-file .env -f docker-compose.yml logs -f
docker compose --env-file .env -f docker-compose.yml pull
docker compose --env-file .env -f docker-compose.yml up -d
docker compose --env-file .env -f docker-compose.yml down

down stops containers but keeps /data/arr intact.

Bootstrap

See docs/bootstrap.md for path wiring and safe import-list guidance.

After the first boot and API-key discovery, ./configure-arr.py can configure Radarr/Sonarr root folders and qBittorrent download clients without putting credentials in Git.