Jellyfin on Docker
Go to file
2026-01-06 22:27:34 +07:00
docker-compose.yml Добавить docker-compose.yml 2026-01-06 22:27:34 +07:00
Readme Обновить Readme 2026-01-06 15:27:39 +07:00

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

mkdir -p ~/jellyfin/{config,cache}
cd ~/jellyfin
nano docker-compose.yml

services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    ports:
      - "8096:8096/tcp"   # основной веб/UI + API для приложений
      - "7359:7359/udp"   # обнаружение устройств в локальной сети (DLNA/SSDP)
      - "1900:1900/udp"   # DLNA — полезно для Android-приложений и SmartTV
    volumes:
      - ~/jellyfin/config:/config
      - ~/jellyfin/cache:/cache
      - /mnt/jellyfin/movies:/media/movies
      - /mnt/jellyfin/music:/media/music
    environment:
      - JELLYFIN_PublishedServerUrl=https://your.domain.ru
    restart: unless-stopped
    # Нужно для корректной работы PublishedServerUrl и локального резолва
    extra_hosts:
      - "host.docker.internal:host-gateway"

#монтируем шару с фильмами, которая расположена, например, на windows server 2016 (у меня), для того чтобы не захламлять ВМ с Linux и Docker

sudo apt update && sudo apt install -y cifs-utils
sudo mkdir -p /mnt/jellyfin/movies /mnt/jellyfin/music

sudo nano /etc/smb-credentials

username=username #от шары
password=password #от шары
domain=WORKGROUP

sudo chmod 600 /etc/smb-credentials

sudo mount -t cifs '//192.168.0.22/e/Movies' /mnt/jellyfin/movies -o   credentials=/etc/smb-credentials,uid=1000,gid=1000,iocharset=utf8,vers=3.0,noperm
sudo mount -t cifs '//192.168.0.22/e/Music' /mnt/jellyfin/music -o   credentials=/etc/smb-credentials,uid=1000,gid=1000,iocharset=utf8,vers=3.0,noperm

ls -la /mnt/jellyfin/movies | head -n 3
df -h | grep username

sudo nano /etc/fstab

//192.168.0.22/e/Movies  /mnt/jellyfin/movies  cifs  credentials=/etc/smb-credentials,uid=1000,gid=1000,iocharset=utf8,vers=3.0,noperm,x-systemd.automount,x-systemd.requires=network-online.target  0  0
//192.168.0.22/e/Music   /mnt/jellyfin/music   cifs  credentials=/etc/smb-credentials,uid=1000,gid=1000,iocharset=utf8,vers=3.0,noperm,x-systemd.automount,x-systemd.requires=network-online.target  0  0

sudo mount -a

#проверяем docker-compose.yml

cd ~/jellyfin

nano docker-compose.yml

services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    ports:
      - "8096:8096/tcp"   # основной веб/UI + API для приложений
      - "7359:7359/udp"   # обнаружение устройств в локальной сети (DLNA/SSDP)
      - "1900:1900/udp"   # DLNA — полезно для Android-приложений и SmartTV
    volumes:
      - ~/jellyfin/config:/config
      - ~/jellyfin/cache:/cache
      - /mnt/jellyfin/movies:/media/movies #шара с фильмами
      - /mnt/jellyfin/music:/media/music #шара с музыкой
    environment:
      - JELLYFIN_PublishedServerUrl=https://jelly.rocket-talk.ru
    restart: unless-stopped
    # Нужно для корректной работы PublishedServerUrl и локального резолва
    extra_hosts:
      - "host.docker.internal:host-gateway"

docker compose down -v #если уже было запущено, удаляем все нафиг

docker compose up -d #запускаем