eisai/jellyfin-nvidia
Jellyfin for Windows Containers with NVENC ready.
191
Jellyfin for Windows containers with NVENC ready.
Using mcr.microsoft.com/windows/server:ltsc2022 as the base image, so it's quite big.
(FFmpeg refuses to work under other smaller images.)
Only Windows build version 20348 or newer are supported (Win11, Server2022)
Hyper-V or CUDA toolkits are not required
Create the following folders, because docker will not automatically create folders for mount on Windows.
jellyfin
├───data
└───docker-compose.yaml
On Windows, there is no network driver of "host", we can only use a hyper-v switch with external mode. (Does not require hyper-v installed)
Also, the container's MAC address will change after each re-creation, so the static IP may be the only option left if you still want to use DLNA. The following configuration is based on that.
If you want DLNA:
version: "3.8"
networks:
jellyfin:
driver: transparent
ipam:
config:
- subnet: 192.168.1.0/24 # CHANGE IT, your local subnet
gateway: 192.168.1.1 # CHANGE IT, your gateway
driver_opts:
com.docker.network.windowsshim.dnsservers: "192.168.1.1" # CHANGE IT, your DNS
com.docker.network.windowsshim.interface: "Ethernet" # CHANGE IT, name of your NIC that jellyfin will bridge to
com.docker.network.windowsshim.networkname: "Docker_Transparent"
services:
jellyfin:
container_name: jellyfin
image: eisai/jellyfin-nvidia
isolation: process
networks:
jellyfin:
ipv4_address: 192.168.1.2 # CHANGE IT, the IP address you want jellyfin to use
volumes:
- '.\data:c:\data'
- 'e:\:c:\media\music:ro' # CHANGE IT, path to your library
- 'f:\:c:\media\videos:ro'
devices:
- class/5B45201D-F2F2-4F3B-85BB-30FF1F953599 # Passing GPU, Dont Change. Delete this block if you dont want to use GPU
If you don't care about DLNA:
version: "3.8"
networks:
jellyfin:
services:
jellyfin:
container_name: jellyfin
image: eisai/jellyfin-nvidia
isolation: process
networks:
- jellyfin
volumes:
- '.\data:c:\data'
- 'e:\:c:\media\music:ro' # CHANGE IT, path to your library
- 'f:\:c:\media\videos:ro'
devices:
- class/5B45201D-F2F2-4F3B-85BB-30FF1F953599 # Passing GPU, Dont Change. Delete this block if you dont want to use GPU
Mount a global SMB share, so you can mount it into the container later
$creds = Get-Credential
New-SmbGlobalMapping -RemotePath "\\fs1.contoso.com\public" -Credential $creds -LocalPath G: -Persistent $true
Jellyfin document
https://jellyfin.org/docs/
This Image
https://github.com/Eisaichen/jellyfin-win-docker
Install an ultralight docker engine on Windows
https://eisaichen.com/?p=76
docker pull eisai/jellyfin-nvidia