Jellyfin: alternativa Open Source a Plex en 2026
Jellyfin transmite tu propia colección de películas, series, música y fotos a cualquier dispositivo, con transcodificación por hardware y cero telemetría, como alternativa 100% libre a Plex.
ℹ️ Soporta transcodificación acelerada por hardware (Intel Quick Sync, NVIDIA NVENC, AMD AMF/VAAPI) configurable desde el panel de administración — no es obligatoria, pero reduce muchísimo el uso de CPU al hacer streaming a dispositivos que no soportan el códec original.
Audit Snapshot
Ver notas →Licencia — Coincide con GitHub
GitHub — Activo
Último release — v12.2 · hace 7 días
Docker Compose — Parcial
Producción — No probado por AltFreeStack
Jellyfin vs. Plex
Ventajas
- 100% gratis y libre de telemetría, a diferencia de Plex
- Comunidad muy activa, fork directo de Emby tras su cierre
A tener en cuenta
- La transcodificación por hardware requiere pasos manuales según tu GPU
- Sin app de Smart TV oficial en algunas plataformas (usa apps de terceros)
Guía rápida de instalación con Docker
Copia este docker-compose.yml, ajusta las contraseñas de ejemplo y ejecuta docker compose up -d en tu servidor. Ver la guía completa paso a paso →
💡 ¿SaaS oficial o self-hosted con AltFreeStack?
- En la nube oficial: una cuota mensual recurrente y límites de uso en Plex.
- En tu propio VPS: software 100% gratis en tu propio servidor, sin límites artificiales de filas, proyectos ni usuarios.
services:
jellyfin:
image: jellyfin/jellyfin:12.1
restart: unless-stopped
ports:
- "8096:8096"
volumes:
- jellyfin_config:/config
- jellyfin_cache:/cache
- /path/to/your/media:/media # point this at your media library folder
volumes:
jellyfin_config:
jellyfin_cache:
🚀 Despliegue en 1 comando
Recomendado para novatosCopia este único comando y pégalo en la consola de tu VPS recién creado (Vultr, DigitalOcean...). Descarga el script, lo muestra en pantalla para que veas exactamente qué va a hacer (nunca un pipe directo a ciegas) y, solo entonces, instala Docker si hace falta, crea los archivos con los secretos ya generados y arranca todo — sin nano, sin copiar y pegar bloques de código.
curl -sSL ".../api/deploy?stack=jellyfin" -o deploy.sh && cat deploy.sh && bash deploy.shEste docker-compose corresponde a un proyecto con actividad reciente en GitHub — último commit hace 1 día.
¿Este docker-compose no te funciona? Repórtalo en GitHub →Ficha técnica
- Licencia
- GPL-2.0
- Categoría
- Almacenamiento
- Sustituye a
- Plex, Netflix
- Stack técnico
- .NETSQLiteffmpeg
Bajo el capó
Base de datos
SQLite
Lenguaje
C# (.NET)
Plataformas
Web · Desktop (Mac/Win/Linux) · Mobile (iOS/Android) · Smart TV
Funcionalidades principales
- Streaming de video, música y fotos a cualquier dispositivo
- Transcodificación por hardware (GPU)
- Apps nativas para TV, móvil y navegador — sin cuenta ni telemetría
Vista previa

Imagen pública proporcionada por Jellyfin en su propio sitio web.
💾 Copias de seguridad en 3 pasos (Día 2)
Mientras la carpeta ./data (el "volumen" mapeado al contenedor) exista en tu servidor, tus datos sobreviven a cualquier reinicio o actualización — es lo único que necesitas respaldar.
1. Crea una copia comprimida en el servidor
tar -czvf backup-$(date +%F).tar.gz ./data2. Descárgala a tu ordenador
Desde la terminal de tu ordenador (no la de tu servidor):
scp root@TU_IP:~/app/backup-*.tar.gz ./3. Restaura en caso de emergencia
tar -xzvf backup-archivo.tar.gz🌐 Conectar tu dominio con SSL gratis
Paso 1 — Configura el DNS
En el panel de tu registrador de dominio (Cloudflare, Namecheap, GoDaddy...), crea un registro:
- Tipo
- A
- Nombre/Host
- @ (dominio raíz) o un subdominio, ej. app
- Contenido/Valor
- La IP pública de tu servidor
Espera entre 5 y 15 minutos a que el registro se propague por internet.
Paso 2 — Proxy inverso automático con Caddy
Un solo archivo, sin configurar Nginx ni certificados manuales — Caddy emite y renueva el HTTPS de Let's Encrypt solo.
Crea un archivo llamado Caddyfile:
tudominio.com {
reverse_proxy localhost:8096
}Levanta Caddy con este comando (descarga la imagen y arranca en segundo plano):
docker run -d -p 80:80 -p 443:443 --name caddy --restart always -v $PWD/Caddyfile:/etc/caddy/Caddyfile -v caddy_data:/data caddy