User Tools

Site Tools


esxi:media_server

This is an old revision of the document!


Media Server

Uses Swizzin to setup a media server with Plex and various downloaders

Setup

First, install a minimal installation of Debian 10 with the following changes:

  • VM Name: Swizzin Media Server
  • Hostname: Optiplex-Media-Swizzin
  • CPU: 3
  • Memory: 3 GB
  • Hard Disk: 100 GB
  • Enable autostart with a priority near the end
  • Doesn't matter what username is used for the non root user

Install Debian 10

  • Download the latest 64-bit PC netinst iso file from debian.org
  • In ESXi:
    • Upload the iso to the iso folder in the datastore
    • Create/Register VM:
      • Create a new virtual machine
      • Name the VM, and choose Linux and Debian GNU/Linux <xx> (64-bit)
      • Specify the desired Target Datastore
      • Customise:
        • CPU:
          • Use the full amount of cores per socket to end up with one socket
        • If using NVMe storage for the datastore:
          • Add other device > NVMe controller
          • Hard Disk 1 > Controller location > NVMe controller 0
          • Remove SCSI controller 0
        • VM Options > Boot Options > Enable Force BIOS setup
        • Select other appropriate VM settings depending on desired applications
      • Confirm settings and Finish
    • If autostart is desired for this machine go to Host > Manage > System > Autostart:
      • Click on the current VM
      • Enable
      • Use Start earlier and Start later to set the desired order
    • Go to Virtual Machines on the sidebar and click on the current VM
      • Run and then stop the VM, it should have booted to its BIOS
      • Give the VM a static IP address from your router using the generated MAC address (found under Hardware Configuration > Network adapter 1) and desired hostname
      • Power on the VM
      • Go through the Debian setup process
        • Give an empty password for root to disable root login and setup sudo
        • In software selection, selecting only the SSH server and Standard system utilities
      • Once setup is finished and it has booted
        • Log in as the created user
        • Run:
          # Install VMWare tools if not already
          sudo apt install open-vm-tools
           
          # Change the SSH port to 50001:
          sudo sed -i "s/#Port 22/Port 50001/" /etc/ssh/sshd_config
          # Optionally enable root SSH login
          sudo sed -i "s/#PermitRootLogin prohibit-password/PermitRootLogin yes/" /etc/ssh/sshd_config
           
          # Optionally set the timezone to UTC:
          timedatectl set-timezone UTC
           
          exit
    • Shut down the VM
    • Edit VM note to be the following:
      Minimal server installation of Debian <xx>
      
      Ports:
      50001/tcp SSH
    • Save a snapshot called Base Install
2020/12/22 08:35 · derek

Install Swizzin

  • Power on the VM
  • Login as root using an SSH client
  • Delete the non root user with userdel -r <username>
  • Start the Swizzin installation with bash <(wget -qO - git.io/swizzin) && . ~/.bashrc
  • Follow the setup, selecting the following services, and saving the Deluge ports in the VM note:
    • NGINX
    • Panel
    • Plex
    • Deluge
    • Jackett
    • Lidarr
    • Radarr
    • Sonarr
    • FIXME: Make sure the list is correct, and possibly add more
  • Check that they can be accessed at https://Optiplex-Media-Swizzin
  • Shutdown the server with shutdown 0
  • Create a snapshot called Swizzin installed
  • In Caddy, add a reverse proxy entry from media.domain.com to https://Optiplex-Media-Swizzin

Configure Services

  • Go to https://media.domain.com
  • Go to Deluge from the sidebar:
  • Go to Jackett from the sidebar:
    • Sign in with the password used to set up Swizzin
    • Add desired indexers
    • Keep the page open to add the feeds into Sonarr and Radarr
  • Go to Sonarr from the sidebar:
    • Settings:
      • Enable Show Advanced
      • Media Management:
        • Rename Episodes
        • Add brackets around each of the quality tags in the formats
        • Season Folder Format: Season {season:00}
        • Specials Folder Format: Season 00
        • Multi-Episode Style: Range
        • Disable Use Hardlinks Instead of Copy
        • Enable Import Extra Files, keeping just srt enabled
        • FIXME: Set Root Folders —————————————————————-
        • Save Changes
      • FIXME: Profiles and Quality (HEVC/1Mbps and things)
      • Indexers:
        • Add the indexers from Jackett using their instructions, except to replace the start of each of the URLs with http://localhost:9117
      • Download Clients:
        • Add new client:
          • Name: Deluge
          • Host: localhost
          • Port: The Deluge Web Port saved from earlier
          • Password: Your Swizzin password
      • Connections:
        • FIXME: maybe setup notifications?
      • UI:
        • First Day of Week: Monday
        • Week Column Header: Tue 25/03
        • Short Date Format: 25/03/2014
        • Long Date Format: Tuesday, 25 March, 2014
        • Time Format: 17:00/17:30
        • Save Changes
  • Go to Radarr in the sidebar:
    • Settings:
      • Enable Show Advanced
      • Media Management:
        • Rename Movies
        • Add brackets around the quality tag in the Standard Movie Format
        • Disable Use Hardlinks Instead of Copy
        • Enable Import Extra Files, keeping just srt enabled
        • Enable Unmonitor Deleted Movies
        • FIXME: Set Root Folders —————————————————————-
        • Save Changes
      • FIXME: Profiles and Quality (HEVC/1Mbps and things)
      • Indexers:
        • Add the indexers from Jackett using their instructions, except to replace the start of each of the URLs with http://localhost:9117
      • Download Clients:
        • Add new client:
          • Name: Deluge
          • Host: localhost
          • Port: The Deluge Web Port saved from earlier
          • Password: Your Swizzin password
      • Connections:
        • FIXME: maybe setup notifications?
      • UI:
        • First Day of Week: Monday
        • Week Column Header: Tue 25/03
        • Short Date Format: 25/03/2014
        • Long Date Format: Tuesday, 25 March, 2014
        • Time Format: 17:00/17:30
        • Save Changes
  • Go to Lidarr in the sidebar:

FIXME: Configure services

Deluge Chrome Integration

Set up Remote Torrent Adder (Github) for Chrome:

  • Add the extension to Chrome Remote Torrent Adder
  • Open the extension options through Chrome’s wrench menu and set your server’s info:
    • Add Server:
      • Name: Deluge
      • Server type: Deluge WebUI
    • Fill in details:
      • Host: <media.domain.com>
      • Port: 443
      • Enable SSL
      • Username: Your Swizzin username
      • Password: Your Swizzin password
      • Relative Path: /deluge

Update

FIXME: Write update process and add to update page using {{page>esxi:media_server#Update}}

  • If desired, Log in to ESXi, navigate to the docker VM and create new snapshot
  • Using an SSH client, connect to <hostname>:50001 then run:
    sudo apt update
    sudo apt upgrade
    sudo reboot  # If desired/needed
2020/12/22 08:35 · derek

Sources

Notes

  • Alternatives:
    • Pro version of QuickBox is a similar solution
    • OpenFLIXR version 3 when it comes out, is a fully configured option

TODO

esxi/media_server.1609695950.txt.gz · Last modified: 2024/09/22 19:51 (external edit)