Skip to content

Setup Jellyfin

Overview

Jellyfin is the volunteer-built media solution that puts you in control of your media. Stream to any device from your own server, with no strings attached. Your media, your server, your way.

Important Docker Files

.env file

.env
TZ=America/New_York
NAME=jellyfin
ID=1000
APPDATA=
DOMAIN=
PORT=8096

docker-compose.yml file

docker-compose.yml
services:
  jellyfin:
    container_name: ${NAME}
    image: lscr.io/linuxserver/jellyfin
    restart: unless-stopped
    environment:
      PUID: ${ID}
      PGID: ${ID}
      TZ: ${TZ}
      JELLYFIN_PublishedServerUrl: https://${NAME}.${DOMAIN}
      NVIDIA_VISIBLE_DEVICES: 'all'
    volumes:
      - ${APPDATA}/${NAME}/config:/config
      - ${TV_MOUNT}:/data/tvshows
      - ${MOVIE_MOUNT}:/data/movies
      - ${UHD_MOUNT}:/data/uhdmovies
    networks:
      - proxy
    dns:
      - 10.1.50.100
      - 10.1.50.101
    labels:
      swag: enable
      swag_address: ${NAME}
      swag_port: ${PORT}
      swag_proto: http
      swag_url: ${NAME}.${DOMAIN}
      com.centurylinklabs.watchtower.enable: true
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
networks:
  proxy:
    external: true

Start the Container

Start the Container
docker compose up -d