Update: Now Jellyfin has provided a BASH script for APT user: https://jellyfin.org/docs/general/installation/linux/#debuntu-debian-ubuntu-and-derivatives-using-apt
Overall it's quite straightforward, especially when compared with installing the LAMP environment or WordPress, thanks to the APT package manager.
For the Ubuntu server, refer: https://jellyfin.org/docs/general/installation/linux#ubuntu
sudo apt install apt-transport-https
sudo add-apt-repository universe
curl -fsSL https://repo.jellyfin.org/ubuntu/jellyfin_team.gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/debian-jellyfin.gpg
echo "deb [arch=$( dpkg --print-architecture )] https://repo.jellyfin.org/ubuntu $( lsb_release -c -s ) main" | sudo tee /etc/apt/sources.list.d/jellyfin.list
sudo apt update
sudo apt install jellyfin
Done.
Furthermore, we'd like to enable HTTPS to our sites, and maybe we'd want this server to be with more usages such as running another WordPress website. For this consideration, Nginx with reverse proxy may be the best solution:
Install Nginx to run a web server. Install certbot to acquire certificates for TLS encryption. Easy, just google for it and follow the official documentation.
Open a browser and visit http://your_ip:8096/
to login to your newly built Jellyfin server, initialize settings, and modify the web path to /jellyfin
(as the following document) or /your_path
(anything you like, and don't forget to change the path in the documentation).
Read the docs: https://jellyfin.org/docs/general/networking/nginx.html#https-config-example
The change of the path will only take effort after a reboot. It takes me a lot of time to realize it's not enough to press the "Save changes" button.
Mostly you just need to copy the configuration as the doc shows. Only one thing needs attention: in the following part, change the variable to IP address as the comment says.
# (if you aren't using DNS remove the resolver line and change the variable to point to an IP address e.g
set $jellyfin 127.0.0.1
)
set $jellyfin jellyfin;
resolver 127.0.0.1 valid=30;
Now restart the nginx.service, enter your_domain/your_path
into the browser and everything should be working! Just visit your own (maybe with your family and friends) Jellyfin server and enjoy!