Login for certain variables to be updated with your slot's information

Wiki > Jellyfin

Jellyfin is currently being provided on our servers as a beta test while we work on implementing it as a fully managed application.

Jellyfin is a Free Software Media System that puts you in control of managing and streaming your media. It is an alternative to the proprietary Emby and Plex, to provide media from a dedicated server to end-user devices via multiple apps. Jellyfin is descended from Emby's 3.5.2 release and ported to the .NET Core framework to enable full cross-platform support.

Installation

Connect to your slot through SSH.

Jellyfin

  1. Start Jellyfin briefly to create configuration files.

     /usr/bin/jellyfin
    
  2. Wait for it to finish outputting information and then press Ctrl+C to shut it down.

  3. Open the configuration file in nano

     nano ~/.config/jellyfin/system.xml
    
  4. Make the following changes:

    • <PublicPort>8096</PublicPort> to <PublicPort>46573</PublicPort>
    • <PublicHttpsPort>8920</PublicHttpsPort> to <PublicHttpsPort>23286</PublicHttpsPort>
    • <HttpServerPortNumber>8096</HttpServerPortNumber> to <HttpServerPortNumber>46573</HttpServerPortNumber>
    • <HttpsPortNumber>8920</HttpsPortNumber> to <HttpsPortNumber>23286</HttpsPortNumber>
  5. Save changes by pressing Ctrl+x, y and then enter

  6. Start Jellyfin in a screen session running in the background

     screen -dmS Jellyfin /usr/bin/jellyfin
    

Automatic restart

  1. Make a file to be used for the script. touch ~/Jellyfin_restart.cron

  2. Edit the file and enter the text below. nano -w ~/Jellyfin_restart.cron

     #!/bin/bash
     if pgrep -fx "jellyfin" > /dev/null
     then
         echo "Jellyfin is running."
     else 
         echo "Jellyfin is not running, starting Jellyfin"
         screen -dmS Jellyfin /usr/bin/jellyfin
     fi
     exit
    
  3. Save the file with Ctrl+x and the "y" and Enter to accept overwriting.

  4. Make the script executable. chmod +x ~/Jellyfin_restart.cron

  5. Open your crontab. EDITOR=nano crontab -e

  6. Enter the following text

     @reboot /home/user/Jellyfin_restart.cron >/dev/null 2>&1
     */5 * * * * /home/user/Jellyfin_restart.cron >/dev/null 2>&1
    
  7. Save the crontab with Ctrl+x and the "y" and Enter to accept overwriting.

Usage

These are the same instructions as Emby and may not be 100% accurate until this notice is removed.

Your Jellyfin web interface will be accessible at http://server.whatbox.ca:46573 Jellyfin will run you through a setup wizard for creating a user and setting up your first libraries. You will not be able to navigate to your slot using the built-in filesystem navigator, so you will need to enter the full path to the directory you want to add to your library, for example /home/user/files

It is strongly recommended to setup authentication on your Jellyfin instance. You can do this in Jellyfin's web interface under the Settings > Users > Your user > Password category. You should not use your slot password here because the web interface does not use SSL. Click Save to save the configuration.

You can attach to your Jellyfin screen session to monitor its output using screen -r Jellyfin , and detach from it again by pressing ctrl+a, d and then enter

IMPORTANT

Jellyfin is much more prone to abusing available resources than Plex. You must limit the CPU threads that Jellyfin may use. We will terminate any instances of Jellyfin running that are using so much CPU as to impact other users on the server. These settings can be found in Settings > Transcoding > Transcoding thread count. Guidelines for plans and the threads they may use follows:

  • Legacy: 1
  • HDD: 4
  • SSD: 4
    Click Save to save the configuration.