Jellyfin Docker Compose: Tu Servidor Multimedia Gratuito 2026

Jellyfin Docker Compose servidor multimedia gratuito streaming

¿Buscas una alternativa gratuita y open source a Plex o Emby? Jellyfin Docker Compose es la solución perfecta para montar tu propio servidor multimedia sin costos ocultos ni suscripciones premium. En esta guía completa, aprenderás a instalar y configurar Jellyfin usando Docker Compose en tu servidor doméstico.

¿Qué es Jellyfin Docker Compose?

Jellyfin es un sistema de medios de código abierto bajo licencia GPL 2.0 que te permite gestionar y transmitir tu biblioteca multimedia desde un servidor dedicado a cualquier dispositivo. A diferencia de alternativas comerciales como Plex o Emby, Jellyfin es completamente gratuito, sin funcionalidades bloqueadas tras muros de pago.

Con más de 46,000 estrellas en GitHub y una comunidad activa de 1,300+ contribuidores, este proyecto se ha consolidado como la opción preferida para usuarios que buscan control total sobre sus medios sin depender de servicios propietarios.

Ventajas de usar Jellyfin Docker Compose

  • 100% gratuito y open source: Sin licencias premium ni características restringidas
  • Sin telemetría ni rastreo: Tus datos permanecen en tu servidor
  • Transcodificación potente: Convierte formatos de vídeo en tiempo real usando jellyfin-ffmpeg
  • Multiplataforma: Clientes disponibles para Android, iOS, TV, navegadores y más
  • Fácil instalación: Docker Compose simplifica el despliegue y las actualizaciones
  • Hardware acceleration: Soporte para GPU Intel QuickSync, NVIDIA NVENC, AMD AMF
  • Gestión de usuarios: Perfiles familiares con control parental y restricciones

Requisitos previos

Antes de instalar Jellyfin con Docker Compose, asegúrate de tener:

  • Docker y Docker Compose instalados en tu sistema Linux, macOS o Windows
  • Mínimo 2GB de RAM (recomendado 4GB+ para transcodificación)
  • Espacio en disco suficiente para tu biblioteca multimedia
  • Permisos de usuario para ejecutar contenedores Docker

Instalación de Jellyfin Docker Compose paso a paso

Paso 1: Crear estructura de directorios

Primero, crea los directorios necesarios para almacenar la configuración y tus archivos multimedia:

mkdir -p ~/jellyfin/{config,cache,media}
cd ~/jellyfin

Paso 2: Crear archivo docker-compose.yml

Crea tu archivo de configuración para desplegar el servidor multimedia:

services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    user: 1000:1000
    network_mode: host
    volumes:
      - ./config:/config
      - ./cache:/cache
      - ./media:/media
    restart: unless-stopped
    environment:
      - JELLYFIN_PublishedServerUrl=http://192.168.1.100:8096
    devices:
      - /dev/dri:/dev/dri  # Para aceleración de hardware Intel

Explicación de la configuración:

  • user: 1000:1000 – Ejecuta el contenedor con tu UID/GID (verifica con id -u)
  • network_mode: host – Permite descubrimiento automático en red local
  • /dev/dri – Habilita aceleración por hardware Intel QuickSync
  • JELLYFIN_PublishedServerUrl – Cambia por la IP de tu servidor

Paso 3: Iniciar Jellyfin

Despliega tu servidor multimedia ejecutando:

docker compose up -d

Docker descargará la imagen oficial y arrancará el contenedor en segundo plano.

Paso 4: Configuración inicial

Accede a la interfaz web desde tu navegador:

http://TU-IP-DEL-SERVIDOR:8096

El asistente de configuración te guiará para:

  1. Seleccionar idioma preferido
  2. Crear tu usuario administrador
  3. Añadir bibliotecas multimedia (Películas, Series, Música)
  4. Configurar metadatos y scrapers (TheMovieDB, TheTVDB, MusicBrainz)
  5. Habilitar acceso remoto si lo necesitas

Configuración avanzada de Jellyfin Docker Compose

Aceleración por hardware NVIDIA

Si tienes una GPU NVIDIA, modifica el archivo Docker Compose para aprovechar NVENC:

services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    runtime: nvidia
    environment:
      - NVIDIA_VISIBLE_DEVICES=all
    devices:
      - /dev/nvidia0:/dev/nvidia0
      - /dev/nvidiactl:/dev/nvidiactl

Recuerda instalar NVIDIA Container Toolkit previamente.

Reverse proxy con Traefik

Para acceso externo seguro con HTTPS automático, combina Jellyfin con Traefik:

services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.jellyfin.rule=Host(`jellyfin.tudominio.com`)"
      - "traefik.http.routers.jellyfin.entrypoints=websecure"
      - "traefik.http.services.jellyfin.loadbalancer.server.port=8096"
    networks:
      - proxy

Consulta nuestra peticiones con Overseerr, con estadísticas de Tautulli y el resto de categoría de Docker Compose para más configuraciones de reverse proxy.

Organización de tu biblioteca multimedia

Para que la aplicación detecte correctamente tus contenidos, organiza tus archivos así:

media/
├── movies/
│   ├── Avatar (2009)/
│   │   └── Avatar (2009).mkv
│   └── Inception (2010)/
│       └── Inception (2010).mkv
├── tv/
│   └── Breaking Bad/
│       ├── Season 01/
│       │   ├── S01E01.mkv
│       │   └── S01E02.mkv
│       └── Season 02/
└── music/
    └── Artist/
        └── Album/
            └── 01 - Track.flac

Esta estructura permite que los scrapers identifiquen automáticamente películas y series desde bases de datos como TheMovieDB.

Clientes disponibles para Jellyfin

Una de las grandes ventajas del proyecto es su ecosistema multiplataforma:

  • Web: Interfaz completa accesible desde cualquier navegador
  • Android/Android TV: App nativa disponible en Google Play
  • iOS/tvOS: Cliente oficial en App Store
  • Roku, Fire TV, Chromecast: Soporte para dispositivos de streaming populares
  • Kodi: Plugin JellyCon para integración completa
  • Desktop: Aplicaciones para Windows, macOS y Linux

Mantenimiento y actualizaciones

Actualizar tu instalación es sencillo con Docker Compose:

cd ~/jellyfin
docker compose pull
docker compose up -d

Esto descargará la última versión de la imagen y recreará el contenedor sin perder configuración ni datos.

Copias de seguridad

Protege tu configuración haciendo backups periódicos del directorio config:

tar -czf jellyfin-backup-$(date +%Y%m%d).tar.gz ~/jellyfin/config

Aceleración por hardware en Jellyfin Docker Compose

Esta es la diferencia entre un servidor que aguanta tres reproducciones simultáneas y otro que se ahoga con una sola. Sin aceleración, transcodificar un 4K consume la CPU entera; con ella, la tarjeta gráfica lo hace sin despeinarse y el consumo baja a una fracción.

Antes de configurar nada, conviene entender cuándo entra en juego. Si el cliente reproduce el fichero tal cual —lo que se llama direct play— no hay transcodificación y da igual tu hardware. La conversión aparece cuando el dispositivo no admite el códec, cuando el ancho de banda no da o cuando hay que quemar subtítulos en la imagen.

Intel con QuickSync o AMD con VAAPI

Es la opción más sencilla y la más común en un servidor doméstico. Basta con pasar el dispositivo de renderizado al contenedor.

services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    devices:
      - /dev/dri:/dev/dri
    group_add:
      - "989"   # GID del grupo render en el host

Ese identificador de grupo no es universal: compruébalo en tu máquina antes de copiarlo, porque si no coincide el contenedor no podrá abrir el dispositivo y la aceleración fallará en silencio.

getent group render
ls -l /dev/dri

Después, en Panel de control → Reproducción, selecciona VAAPI —o QSV si tienes Intel y quieres exprimirla— y marca los códecs que tu chip admita. Como regla, cualquier Intel de la octava generación en adelante decodifica y codifica H.264 y HEVC sin problema.

NVIDIA con NVENC

Requiere el toolkit de contenedores de NVIDIA instalado en el anfitrión, igual que veíamos para las cargas de IA. La declaración en Compose cambia:

    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]

Ojo con una limitación que pilla a mucha gente: las tarjetas de consumo llevan un tope de sesiones simultáneas de codificación impuesto por el controlador. Para uso doméstico sobra, pero no esperes montar un servicio para veinte personas con una tarjeta de escritorio.

Cómo comprobar que funciona: reproduce algo forzando una calidad inferior desde el cliente y abre el panel de actividad. Si la línea de transcodificación indica un método por hardware y la CPU del servidor apenas se mueve, está funcionando. Si la CPU se dispara al 100 %, sigue haciéndolo por software.

Nomenclatura de ficheros: el paso que nadie explica

La causa número uno de «no me salen las carátulas» no es un fallo del servidor, sino cómo están nombrados los ficheros. El identificador de metadatos busca patrones concretos, y si no los encuentra deja el elemento sin información o lo confunde con otro título parecido.

Para películas, una carpeta por título con el año entre paréntesis:

peliculas/
├── El Padrino (1972)/
│   ├── El Padrino (1972).mkv
│   └── El Padrino (1972).es.srt
└── Blade Runner (1982)/
    └── Blade Runner (1982).mkv

Para series, la estructura por temporadas y el patrón SxxExx, que es el que reconoce sin ambigüedad:

series/
└── Twin Peaks (1990)/
    ├── Season 01/
    │   ├── Twin Peaks S01E01.mkv
    │   └── Twin Peaks S01E02.mkv
    └── Season 02/
        └── Twin Peaks S02E01.mkv

El año es más importante de lo que parece cuando hay remakes: sin él, una película de 2024 puede acabar identificada como la original de los setenta. Y los subtítulos externos se asocian solos si comparten nombre con el vídeo y llevan el código de idioma antes de la extensión.

Si arrastras una biblioteca desordenada, renombrar antes de la primera importación ahorra muchísimo trabajo: corregir metadatos mal asignados después es bastante más tedioso que ponerlo bien de entrada.

Usuarios, perfiles y acceso desde fuera de casa

Una vez tienes la biblioteca ordenada, lo siguiente es compartirla sin abrir la puerta de par en par. El servidor permite crear un usuario por persona, cada uno con su historial de reproducción, sus listas y sus permisos.

  • Acceso por biblioteca. Puedes dar a alguien solo la carpeta de series y ocultarle el resto.
  • Control parental por clasificación de edad, con la opción de bloquear elementos sin clasificar.
  • Límite de sesiones simultáneas, útil si compartes con familia y el servidor va justo.
  • Permiso de descarga, que conviene desactivar salvo que quieras copias sueltas por ahí.

Para el acceso remoto hay dos caminos y no dan el mismo resultado. El primero es publicar el servicio con un dominio y certificado, poniendo delante un proxy inverso como Caddy o Traefik. Es lo más cómodo para quien se conecta, porque funciona desde cualquier cliente sin configurar nada.

El segundo es no exponerlo y entrar por VPN. Con WireGuard o una malla tipo Tailscale, tu servidor no aparece en ningún escaneo de Internet y la superficie de ataque se reduce a cero. El precio es que cada persona con la que compartas tiene que instalar el cliente de VPN, lo cual funciona bien con gente técnica y regular con el resto de la familia.

Si lo publicas en Internet: desactiva el descubrimiento automático en red local, exige contraseñas decentes a todos los usuarios y no dejes la cuenta de administración sin contraseña «porque es la mía». Un servidor multimedia expuesto es un objetivo tan válido como cualquier otro.

Sobre el ancho de banda: reproducir en calidad original desde fuera consume lo que ocupe el fichero. Un remux 4K puede pedir 60 Mbps de subida, muy por encima de lo que ofrece una conexión doméstica típica. Ahí es donde la aceleración por hardware de la sección anterior se vuelve imprescindible, porque permite servir una versión reducida sin castigar al servidor.

Solución de problemas comunes

Error de permisos en archivos

Si ves errores de permisos, verifica que el UID/GID del contenedor coincida con el propietario de los archivos:

sudo chown -R 1000:1000 ~/jellyfin/config ~/jellyfin/cache

Transcodificación lenta

Habilita aceleración por hardware en Panel de control → Reproducción → Transcodificación. Selecciona Intel QuickSync, NVIDIA NVENC o AMD AMF según tu hardware.

Puerto 8096 ocupado

Si otro servicio usa el puerto 8096, cámbialo modificando el archivo:

ports:
  - "8097:8096"  # Ahora accede vía puerto 8097

Jellyfin vs Plex vs Emby: Comparativa 2026

CaracterísticaJellyfinPlexEmby
Precio100% GratuitoFreemium ($4.99/mes)Freemium ($4.99/mes)
Código abiertoSí (GPL 2.0)NoNo
TelemetríaNingunaExtensaModerada
Hardware accel.Sí (gratuito)Solo Plex PassSolo Premiere
Usuarios concurrentesIlimitadosLimitado en freeLimitado en free
Dependencia internetNoRequiere autenticaciónOpcional

Preguntas frecuentes (FAQ)

¿Es Jellyfin realmente gratuito?

Sí, completamente gratuito y de código abierto bajo licencia GPL 2.0. No existen características premium ni muros de pago. Todo el software está disponible sin costo alguno.

¿Puedo usar Jellyfin sin conexión a internet?

Absolutamente. A diferencia de Plex, no requiere autenticación en servidores externos. Funciona perfectamente en redes locales aisladas o sin acceso a internet.

¿Soporta subtítulos automáticos?

Sí, incluye plugins para descargar subtítulos automáticamente desde OpenSubtitles. Soporta formatos SRT, ASS, SSA y VTT con estilos personalizables.

¿Qué formatos de vídeo reproduce?

Reproduce prácticamente cualquier formato gracias a FFmpeg: MKV, MP4, AVI, MOV, WEBM, HEVC/H.265, AV1, VP9, y más. La transcodificación automática convierte formatos no soportados por tu dispositivo.

¿Cómo migro desde Plex a Jellyfin?

No existe migración automática de metadatos de Plex. Deberás reescanear tu biblioteca, aunque la aplicación detectará automáticamente la información desde bases de datos públicas. Mantén la estructura de carpetas organizada para facilitar el proceso.

Conclusión

Jellyfin Docker Compose representa la mejor alternativa gratuita y open source para crear tu servidor multimedia personal. Sin suscripciones, sin telemetría y con control total sobre tus medios, es la elección ideal para usuarios que valoran su privacidad y autonomía.

La combinación de Docker Compose facilita el despliegue, las actualizaciones y el mantenimiento, mientras que la comunidad activa garantiza mejoras continuas y soporte técnico. Si buscas una solución multimedia robusta sin costos recurrentes, esta es tu mejor opción en 2025.

¿Listo para montar tu propio Netflix casero? Descarga el código fuente en GitHub y únete a la revolución del streaming autoalojado.

Avatar

Por Mid

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
0
Would love your thoughts, please comment.x
()
x