Configuring Prowlarr for Sonarr & Radarr
The chances are a lot of us bought our NAS devices to, at least in part, run a media server on them. We all have our (legal) methods for obtaining our content, and a lot of us use Radarr, Sonarr and the other 'arr' apps to automate our collections. If you've gone through this, you'll know that nzb and torrent indexers (depending on which you use) need to be configured in each of the *arr apps. Well, this is where Prowlarr comes in.
Prowlarr has been developed to be a single point indexer manager. Set up the indexers in Prowlarr, and you can then connect your other *arrs to it, which will then automatically import the indexer settings directly into them. I'll go through it below.
Preparing your system
Our file system of media folders needs to be created first so that we know what we're pointing our container volumes to. (If you already have sonarr and radarr setup, or at least have a working directory for downloads and movies/tv, skip this step and head to the next one, Creating the Docker Network.)
I follow the Trash Guide for directory locations, which allows for hardlinks/atomic file movement (less work for your disk drives). Basically this means having all your media folders, including your download folder, in one Shared folder. You will likely want something that looks like this:
volume1
│
└── media
├── torrents
│ ├── movies
│ ├── music
│ └── tv
├── usenet
│ ├── movies
│ ├── music
│ └── tv
└── libraries
├── movies
├── music
└── tv
media
folder, and our download client access only to the relevant torrents
or usenet
subfolderSo if you don't have this folder structure already:
- Create your root 'media' directory
- Create your 'torrents' or 'usenet' directories (depending on what you use) and their sub-directories inside your 'media' directory
- Create your 'libraries' directory and associated sub-directories
Creating the Docker Network
In our docker-compose file we are going to specify a network for the containers called arr
, so let's go ahead and create that network:
- SSH into your machine
- type in the following:
docker network create arr
rather than allow docker to auto-assign a subnet, if you prefer you can specify your own custom subnet. You can find out more in this article
Creating the Containers
We're going to use docker-compose for this.
- In SSH, navigate to your docker or compose directory and create your container folders using the following command:
mkdir {prowlarr,sonarr,radarr}
{ }
brackets is a way of applying the command to multiple directories at once- Next. create your
docker-compose.yml
and.env
files:
touch {docker-compose.yml,.env}
vim
ornano
into yourdocker-compose.yml file
and copy paste the below:
networks:
default:
name: arr
external: true
services:
prowlarr: #indexer manager for Sonarr & Radarr
image: ghcr.io/linuxserver/prowlarr:develop
container_name: prowlarr
environment:
- PUID=$PUID
- PGID=$PGID
- TZ=$TZ
volumes:
- ./prowlarr:/config
ports:
- 9696:9696
restart: unless-stopped
radarr: #movie search agent
image: ghcr.io/linuxserver/radarr
container_name: radarr
environment:
- PUID=$PUID
- PGID=$PGID
- TZ=$TZ
- UMASK=022
volumes:
- ./radarr:/config
- $MEDIADIR:/media
ports:
- 7878:7878
restart: unless-stopped
sonarr: #TV show search agent
image: ghcr.io/linuxserver/sonarr:latest
container_name: sonarr
environment:
- PUID=$PUID
- PGID=$PGID
- TZ=$TZ
- UMASK=022
volumes:
- ./sonarr:/config
- $MEDIADIR:/media
ports:
- 8989:8989
restart: unless-stopped
vim
ornano
into your.env
file, and copy paste the below, adding the variables to suit your system:
PUID=1000 #change to your user's PUID
PGID=100 #change to your user's PGID
TZ=Europe/Paris #change to your timezone location
MEDIADIR=/path/to/your/media/directory
- Still in SSH and in the directory you put your
docker-compose.yml
, typedocker-compose up -d
followed byenter key
to run it. After it's finished doing what it does, and provided you set up the folder configuration correctly and the ports you specified were previously unused, you should now have your three containers accessible at the relevanthttp://hostIP:[port]
in your browser
Configuring Prowlarr
Pre-configuring Sonarr and Radarr
We'll first get some information from Sonarr and Radarr which will be needed to properly configure Prowlarr.
- Access Sonarr by typing
http://machineIP:8989
into your browser address bar (changemachineIP
to your host machine's actual IP) - Navigate to 'Settings' > 'General' and copy the API Key

- Do exactly the same for Radarr (using port 7878), and make sure you remember which is which
services:
sonarr:
environment:
- DOCKER_MODS=gilbn/theme.park:sonarr
- TP_DOMAIN=gilbn.github.io
- TP_THEME=aquamarine
theme.park:radarr
Setting up Prowlarr
Now we access Prowlarr in the same way as Sonarr/Radarr by typing http://machineIP:9696
into your browser address bar.
The first screen you see should look something like this:

For this next bit I'm going to assume you have access to certain indexers already - a full list of those compatible with Prowlarr can be found here, and if you don't already have access then you'll need to purchase/configure them before you start this next step:
Setting up an indexer
- Click the
Add New Indexer
button - The list of available indexers will pop up, and you can refine your search using the bar at the top of the popup:

- When you've selected your indexer, another popup will be displayed:

- Change the name if you wish, make sure the box next to
Enable
is checked, and input your indexer API key
Profile
or Security
or Connections
pages- If you want, clicking the 'settings' gear wheel will show advanced options. These aren't necessary for our purposes right now
- Click the 'Test' button. If it returns a green
✓
symbol then you've successfully connected to your indexer. Hit 'Save' - Repeat for as many indexers as you have
Connecting Prowlarr to your other arrs
- In the left hand navigation pane, click 'Settings' > 'Apps' and the big
+
button under 'Applications'

- In the popup, select 'Sonarr', and in the next popup you'll see the following:

- Change the name if you want, make sure the server ports are correct, and paste in the Sonarr ApiKey we got earlier on. Click 'Test', and if you get the green tick, hit 'Save'
- Repeat the Application steps to add Radarr too
localhost
- Now go back to either your Sonarr or Radarr screens, and navigate to 'Settings' > 'Indexers'. You should see the name of the indexer(s) you configured in Prowlarr populated. They are identifiable by the
(Prowlarr)
tag after the indexer name:

Congratulations! You've now configured Prowlarr with Radarr and Sonarr, and you know the process for doing the same with the other *arrs you may have.
As this isn't a full Sonarr/Radarr setup tutorial, there are other settings you still need to do before they will operate properly, such as configuring your Download Client (whatever it may be) and other optional settings such as profiles and quality. This article won't go into that, but as a word of caution:
It's possible to set your Download Client inside Prowlarr and use it exclusively as your search agent for all your *arrs. At some point it may be possible to add a download client to Prowlarr which then gets passed to the applications in the same way as the indexers do, but it's not a current feature. As of now it seems that search and download within Prowlarr isn't particularly well defined, so I would continue to do that within your individual Sonarr/Radarr etc. apps.
Related Articles


Have some feedback or something to add? Comments are welcome!
Please note comments should be respectful, and may be moderated