From af178e61f4a71fae4bc33dbbbfc95cdd83251a51 Mon Sep 17 00:00:00 2001 From: Blaster4385 Date: Tue, 11 Jul 2023 14:16:39 +0530 Subject: [PATCH] Initial server config --- .env | 6 ++++ .gitignore | 5 +++ README.md | 51 +++++++++++++++++++++++++++++ docker-compose.yml | 81 ++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 143 insertions(+) create mode 100644 .env create mode 100644 .gitignore create mode 100644 README.md create mode 100644 docker-compose.yml diff --git a/.env b/.env new file mode 100644 index 0000000..960f2bd --- /dev/null +++ b/.env @@ -0,0 +1,6 @@ +VOL_DOWNLOAD=/data/downloads +VOL_MUSIC=/data/music +VOL_MOVIES=/data/movies +VOL_SERIES=/data/tv_series +VOL_PHOTOS=/data/photos +VOL_OTHER=/data/other diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e4f58ef --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +plex/ +prowlarr/ +radarr/ +sonarr/ +transmission/ diff --git a/README.md b/README.md new file mode 100644 index 0000000..a23f9bb --- /dev/null +++ b/README.md @@ -0,0 +1,51 @@ +# Docker based media server setup + +## Components + +- [Plex](http://plex.tv/) for streaming +- [Prowlarr](https://prowlarr.com/) for managing indexers +- [Sonarr](https://sonarr.tv/) for series +- [Radarr](https://radarr.video/) for movies +- [Transmission](https://transmissionbt.com/) as a download client + +## Setup + +- Set the paths for storing content in the ```.env``` file +- Start the containers using + + ``` + docker-compose up -d + ``` +- Wait for the containers to start +- The respective URLs for the services are + + |Service|URL| + |---|---| + |Plex|http://{host ip}:32400/web| + |Transmission|http://{host ip}:9091| + |Radarr|http://{host ip}:7878| + |Sonarr|http://{host ip}:8989| + |Prowlarr|http://{host ip}:9696| +- You need to set the download client as transmission in both sonarr and radarr. To do this: + - Go to Settings > Download Clients + - Add new client + - Set the host as the ip address of the host + - Leave port as default (9091) + - Test the connection and then Save +- You also need to set the root folder in both sonarr and radarr. To do this: + - Go to Settings/Media Management + - Click Add Root Folder + - Browse to and select the series folder for sonarr and movies folder for radarr +- You need to add sonarr and radarr to prowlarr to automatically sync the indexers. To do this: + - Go to Settings > Apps + - Add new apps and select sonarr and radarr respectively + - Set the Prowlarr Server as ```{host ip}:9696``` (Don't use localhost as it may not be accessible by sonarr and radarr) + - Set the Sonarr and Radarr Servers as ```{host ip}:8989``` and ```{host ip}:7878``` respectively + - Set the API key as the API key for sonarr and radarr respectively + - You can get the API key for sonarr and radarr by going to Settings > General + - Test the connection and then Save + +## Notes + +- The docker-compose file is based on the [linuxserver.io](https://www.linuxserver.io/) images +- This is only for educational purposes and I do not condone piracy in any way. Please use this only for legal purposes. diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..0d6a932 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,81 @@ +version: '3' + +services: + # media server + plex: + image: linuxserver/plex + environment: + - PUID=1000 + - PGID=1000 + - UMASK=002 + volumes: + - "./plex/config:/config" + - "${VOL_SERIES}:/data/series" + - "${VOL_MOVIES}:/data/movies" + - "${VOL_MUSIC}:/data/music" + - "${VOL_OTHER}:/data/other" + - "${VOL_PHOTOS}:/data/photos" + - "./plex/transcode:/transcode" + - "/etc/localtime:/etc/localtime:ro" + network_mode: "host" + restart: "unless-stopped" + # torrent downloader + transmission: + image: linuxserver/transmission + environment: + - PUID=1000 + - PGID=1000 + - UMASK=002 + volumes: + - "./transmission/config:/config" + - "./transmission/watch:/watch" + - "${VOL_DOWNLOAD}:/downloads" + - "${VOL_MOVIES}:/downloads/movies" + - "${VOL_SERIES}:/downloads/series" + - "${VOL_OTHER}:/downloads/other" + - "/etc/localtime:/etc/localtime:ro" + network_mode: "host" + restart: "unless-stopped" + # movie search + radarr: + image: linuxserver/radarr + environment: + - PUID=1000 + - PGID=1000 + - UMASK=002 + volumes: + - "${VOL_DOWNLOAD}:/downloads" + - "${VOL_MOVIES}:/movies" + - "./radarr/config:/config" + - "/etc/localtime:/etc/localtime:ro" + ports: + - "7878:7878" + restart: "unless-stopped" + # tv series search + sonarr: + image: linuxserver/sonarr + environment: + - PUID=1000 + - PGID=1000 + - UMASK=002 + volumes: + - "${VOL_DOWNLOAD}:/downloads" + - "${VOL_SERIES}:/series" + - "./sonarr/config:/config" + - "/etc/localtime:/etc/localtime:ro" + ports: + - "8989:8989" + restart: "unless-stopped" + # tv series search + prowlarr: + image: linuxserver/prowlarr + environment: + - PUID=1000 + - PGID=1000 + - UMASK=002 + volumes: + - "./prowlarr/config:/config" + - "/etc/localtime:/etc/localtime:ro" + ports: + - "9696:9696" + restart: "unless-stopped"