Skip to content

sonarr

Sonarr - TV library manager.

sonarr

Prepare

podman pull lscr.io/linuxserver/sonarr:latest
mkdir -p $HOME/apps/{variables,container_data}
touch $HOME/apps/variables/sonarr.env
mkdir -p $HOME/apps/container_data/sonarr

Edit environment file

Edit the environment file and paste your default values for this service:

nano $HOME/apps/variables/sonarr.env

Example contents:

PUID=1025
PGID=1000
TZ=Europe/Athens

Installation

touch $HOME/.config/containers/systemd/sonarr.container
# sonarr.container
[Container]
ContainerName=sonarr
HostName=sonarr
AutoUpdate=registry
Image=lscr.io/linuxserver/sonarr:latest
Network=skynet.network
DNS=10.0.0.250
EnvironmentFile=%h/apps/variables/sonarr.env
Volume=%h/apps/container_data/sonarr:/config
Volume=/mnt/poseidon/media/tvshows:/tv
Volume=/mnt/poseidon/media/anime:/anime
Volume=/mnt/downloads:/downloads
Volume=/mnt/downloads/watch:/watch
#linuxserver.io specific
UIDMap=1025:0:1
UIDMap=0:1:1025

[Service]
Restart=always
TimeoutStartSec=300

[Install]
WantedBy=default.target

Configuration of Nginx (Reverse Proxy)

Create nginx conf.

touch /$HOME/apps/container_data/nginx/sonarr.conf

Configuration for nginx conf for port 80.

server {
  listen 80;
  server_name tvshows.skynet.lan;
  access_log /var/log/nginx/sonarr_access.log;
  error_log /var/log/nginx/sonarr_error.log;
  location / {
    proxy_pass http://sonarr:8989/;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

Restart Nginx

systemctl --user restart nginx

Usage

Open http://tvshows.skynet.lan

Troubleshooting

podman logs -f sonarr
journalctl --user -u nginx -n 200