I decided I wanted to host my own media server and I didn’t want to use Plex so I chose Jellyfin. Here’s how I set mine up using docker and Portainer.

Docker

You can use docker compose or simply deploy the app through Portainer’s UI without docker compose. Replace any $ variable with your setting. Here are the settings that I used for my docker setup:

image: linuxserver/jellyfin:latest
ports:
	- 1900:1900 # tcp
	- 8086:8086 # tcp
	- 7359:7359 # udp
	
volumes:
	- ./media/tv:/data/TV
	- ./media/videos:/data/Videos
	- ./media/movies:/data/movies
	- ./media/music:/data/music
	- ./docker/jellyfin/config:/config
	
environment:
	- PUID=${PUID}
	- PGID=${PGID}
	- TZ=America/Toronto
	
restart-policy=unless-stopped

I do plan to look at using reverse proxies in the future so I may access my content from outside of my local network but that will be done at a later date. When I get it running I will update this blog post and mark it with an update timestamp.