Sonarr is one of the best services that allows you to automate your TV show download. Just like SickRage it allows you to create watch lists and automatically download them when they are available. Some users prefer to install Sonarr instead of Sickrage because it is a bit faster and the interface is friendlier. You can read our comparison for Sonarr vs Sickrage showing the differences between the two and choose the one that fits best for your use case.
Must Read: Ultimate Smart Home Media Server with Docker and Ubuntu 18.04 – Basic
While you can install Sonarr in Windows or use AtoMic Toolkit to install Sonarr in Ubuntu, Docker offers more flexibility and ease of use. Continue reading in order to learn how to install Sonarr using Docker.
If you do not know what Docker is, be sure to read our What is Docker guide and comparison to VirtualBox in advance and get familiarized with the terms used.
Table of Contents
Install Sonarr using Docker
You can install Sonarr in a new Docker container from scratch. But, ready-made containers are already available for several apps on Docker Hub. So all you need to do is pull those containers and install. If you are ready, open Docker command prompt and get ready to setup Sonarr in Docker.
Usenet is Better Than Torrents:
For apps like Sonarr, Radarr, SickRage, and CouchPotato, Usenet is better than Torrents. Unlimited plans from Newshosting (US Servers), Eweka (EU Servers), or UsenetServer, which offer >3000 days retention, SSL for privacy, and VPN for anonymity, are better for HD content.
|Newshosting||>3000 days, unlimited, SSL, VPN||$9.99||
$99.99 ($8.33 / month)
|UsenetServer||>3000 days, unlimited, SSL, VPN||$9.99||$99.99 ($8.33 / month)|
|Eweka||>3000 days, unlimited, SSL, EU Servers||€7,50 (Special!!!)|
|For more plans that may fit your needs please read our Usenet plan selection guide.|
1. Docker Pull Command
To install Sonarr using Docker, you will first need to grab the latest version of Sonarr container from the linuxserver Docker Hub. LinuxServer is a Docker repository with several HTPC and home server app containers.
sudo docker pull linuxserver/sonarr
Pull the ready-made Sonarr docker container using the above command.
2. Set Sonarr Configuration Parameters in Docker
After pulling the container with the latest version of Sonarr, we need to configure the usage parameters such as download folders, port number, etc. for the service. Copy all lines in the code block below (it is one single command) and paste it into docker prompt.
sudo docker create --name=sonarr \ --restart=always \ -p 8989:8989 \ -e PUID=1001 -e PGID=1001 \ -v /dev/rtc:/dev/rtc:ro \ -v /home/docker/sonarr/config:/config \ -v /home/docker/sonarr/tv:/tv \ -v /home/docker/sonarr/downloads:/downloads \ linuxserver/sonarr
While you can just copy and paste the settings mentioned above, I recommend that you understand each parameter using the description below and customize it to your liking. Therefore, before issuing the above docker command, change certain parameters (eg. port number, folders, etc.) to fit your situation.
sudo docker create --name=sonarr \- Creates a new docker container with the name "sonarr".
--restart=always \- Starts the Sonarr container automatically during boot. If you don't want the container to be started automatically, you can skip this command.
-v /dev/rtc:/dev/rtc:ro \ -Map the hwclock as ReadOnly. Without this command, Mono throws an exception
-v /home/docker/sonarr/config:/config \- Specifies the location of the config folder. In this case, the config folder is located in /home/docker/sonarr/ directory.
-v /home/docker/sonarr/downloads:/downloads \- Specifies the location of the downloads folder. In this case, the downloads folder is located in /home/docker/sonarr/ directory.
-v /home/docker/sonarr/tv:/tv \- Specifies the location of the tv folder. In this case, the tv folder is located in /home/docker/sonarr/ directory.
-e PGID=1001 -e PUID=1001 \- Specifies the user id in order to minimize permission issues that can arise between the host OS (Ubuntu) and the container.
-p 8989:8989 \- Specifies the port used by the service.
3. Start and Stop Sonarr Container in Docker
If you used the correct parameters, you can go ahead and start the Sonarr container you have just created, using the following command.
sudo docker start sonarr
4. Updating Sonarr in Docker
Sonarr is now running in Docker and probably you are wondering how can you keep up to date with the latest bugfixes and features the Sonarr developers do. All you need to do is check for updates regularly.
In order to do that, we need to click on the
System icon, then click on the
Updates tab. On this page, we can see the currently installed Sonarr version and the available updates. By clicking on the blue
Install Latest button, we can trigger the update to the latest version of Sonarr. You don't need to worry about backups because Sonarr will do a config backup before each update. When the update has been completed, you just need to reload Sonarr and start enjoying the latest version.
Sonarr is now installed in Docker. What to do next?
Congratulations! You managed to setup Sonarr in Docker successfully. Once Docker is setup, it is extremely simple to create and destroy containers with apps. If you want to be able to access Sonarr outside your home network, be sure to setup port forwarding on your router. You will have to forward the Sonarr port to the local/internal IP address of the system with Docker Sonarr installation. For added convenience, you may also remotely manage Sonarr with Sonarrlink on Android. Check back soon to learn more about Docker and how you can install various other services in Docker containers.