Gerador de Docker Compose para Jellyfin
Gere um compose.yaml para o Jellyfin. Escolha a imagem oficial ou da LinuxServer.io, as portas e a rede, as pastas de mídia e a aceleração de hardware Intel, AMD ou NVIDIA, e obtenha um arquivo pronto para executar.
Entrada
Saída
- A execução do Jellyfin em um contêiner é compatível apenas com Linux. No Windows e no macOS, instale o Jellyfin nativamente.
Leia-me
O que é o Jellyfin?
O Jellyfin é um servidor de mídia gratuito e de código aberto. Ele transmite seus filmes, séries, músicas e fotos para navegadores, celulares, TVs e outros dispositivos, e pode transcodificar vídeos em tempo real. O projeto fornece uma imagem oficial, jellyfin/jellyfin, que também é publicada como ghcr.io/jellyfin/jellyfin. O projeto LinuxServer.io oferece outra imagem, lscr.io/linuxserver/jellyfin, com suas próprias pastas e variáveis.
Descrição da ferramenta
Esta ferramenta cria um compose.yaml para o Jellyfin com base no guia de instalação do projeto. Você escolhe a imagem e a tag, as portas e a rede, o usuário, as pastas de configuração e cache e qualquer quantidade de pastas de mídia, que podem ser montadas como somente leitura. Com a imagem oficial, você também pode montar pastas com fontes personalizadas e fontes alternativas. Para a placa gráfica, a ferramenta adiciona o que a documentação do Jellyfin descreve: /dev/dri e o grupo render para Intel e AMD, ou o runtime da NVIDIA e uma reserva de GPU para NVIDIA. Ela altera o arquivo quando você escolhe a imagem do LinuxServer.io, que usa PUID, PGID e TZ em vez de user. Tudo é criado no seu navegador.
Recursos
- A imagem oficial do Docker Hub ou do GitHub Container Registry, ou a imagem do LinuxServer.io, com qualquer tag
- Modo bridge com as portas 8096 e 7359/udp, uma porta HTTPS opcional 8920 e um endereço de bind, ou modo host, necessário para DLNA
- A URL publicada do servidor para clientes que descobrem o servidor
- Um usuário no formato
uid:gidpara a imagem oficial, ouPUID,PGIDe o fuso horário para o LinuxServer.io - Configuração e cache no host ou em volumes Docker nomeados, declarados automaticamente para você
- Várias pastas de mídia, cada uma com um caminho no container e uma opção para montá-la como somente leitura
- Fontes personalizadas e fontes alternativas para legendas incorporadas durante a transcodificação
- Aceleração de hardware com VA-API ou QSV para Intel e AMD, ou NVENC para NVIDIA
- Qualquer outra variável de ambiente, comentários que explicam o arquivo e um download como
compose.yaml
Exemplos
As configurações padrão fornecem o exemplo da documentação do Jellyfin, com as pastas ao lado do arquivo:
services:
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
ports:
- "8096:8096"
- "7359:7359/udp"
volumes:
- ./config:/config
- ./cache:/cache
- /path/to/media:/media
restart: unless-stoppedEscolher a aceleração de hardware NVIDIA adiciona o runtime e a reserva de GPU:
runtime: nvidia
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities:
- gpuDicas
- Salve o resultado como
compose.yamle inicie-o comdocker compose up -d. Em seguida, abrahttp://localhost:8096e adicione suas pastas de mídia como bibliotecas, usando os caminhos no container - A execução do Jellyfin em um container só é compatível com Linux. No Windows e no macOS, instale o Jellyfin nativamente, pois a aceleração de hardware e as verificações de bibliotecas apresentam problemas conhecidos em containers nesses sistemas
- Encontre o ID do grupo render no host com
getent group render | cut -d: -f3. Em alguns sistemas, o grupo évideoouinput - Para NVIDIA, instale primeiro o driver da NVIDIA e o NVIDIA Container Toolkit no host
- Depois de ativar a aceleração de hardware no container, habilite-a no painel do Jellyfin, em Reprodução, Transcodificação
- DLNA é um plugin e precisa do modo host, pois sua descoberta usa broadcasts na porta 1900/udp, que não atravessam o bridge
- As imagens do projeto oficial e do LinuxServer.io armazenam seus dados em locais diferentes, portanto não é possível trocar uma pela outra em uma pasta existente
- Monte as mídias como somente leitura quando o Jellyfin não precisar modificá-las