Jellyfin: Sistema de medios de software libre autohospedado
Servidor backend y API multiplataforma para gestionar y transmitir tu biblioteca multimedia sin licencias propietarias
Vídeo tutorial en YouTube
Mira el vídeo completo sobre cómo instalar y usar Jellyfin: Sistema de medios de software libre autohospedado en el canal GENBYTE:
¿Qué es Jellyfin: Sistema de medios de software libre autohospedado?
Jellyfin es un sistema de medios de software libre que te permite controlar la gestión y el streaming de tu contenido multimedia. Nacido como alternativa a soluciones propietarias como Emby y Plex, Jellyfin desciende de la versión 3.5.2 de Emby y fue portado a la plataforma .NET para ofrecer soporte completo multiplataforma. No existen licencias premium, funciones ocultas ni agendas comerciales: solo un equipo que busca construir una mejor solución de forma colaborativa. El proyecto se distribuye bajo licencia GPL-2.0 y cuenta con una comunidad activa que contribuye al desarrollo, traducción y soporte.
Características principales
Software libre y sin restricciones
Licencia GPL-2.0, sin funciones premium, sin licencias de pago y sin telemetría obligatoria. El código fuente es completamente abierto y auditable.
Multiplataforma nativo
Desarrollado en C# sobre .NET, funciona en Linux, Windows, macOS y contenedores Docker. Arquitectura única para todos los sistemas operativos soportados.
Interfaz web y API REST
Incluye cliente web accesible por navegador en el puerto 8096 por defecto y documentación de API mediante Swagger en /api-docs/swagger/index.html.
Transcodificación por hardware
Soporte para ffmpeg (incluyendo jellyfin-ffmpeg) con aceleración de hardware para transcodificar formatos no compatibles con el dispositivo cliente.
Ecosistema de clientes
Aplicaciones oficiales para Android, iOS, Android TV, Fire TV, Roku, Kodi, y clientes de terceros para múltiples plataformas.
Gestión de metadatos automática
Descarga automática de metadatos, imágenes, subtítulos y información de medios desde múltiples proveedores configurables.
Soporte para TV en vivo y DVR
Integración con sintonizadores de red (HDHomeRun, M3U, XMLTV) para televisión en vivo y grabación de programas (DVR).
Sincronización offline
Permite sincronizar contenido para reproducción sin conexión en dispositivos móviles.
Requisitos del sistema
- Sistema operativo: Linux, Windows, macOS o contenedor Docker
- Runtime: .NET 10 (para compilación desde código fuente)
- ffmpeg instalado en el sistema (para transcodificación)
- Puerto 8096 disponible para la interfaz web (configurable)
- Espacio en disco para biblioteca multimedia y metadatos
- Memoria RAM: mínimo 2 GB recomendados para transcodificación
Instalación con Docker Compose
Docker (recomendado para producción)
La imagen oficial está disponible en Docker Hub. El proyecto proporciona imagen multi-arquitectura con etiquetas para versiones estables y nightly. Consulta la documentación oficial para parámetros de volúmenes, variables de entorno y puertos específicos.
–name jellyfin \
-p 8096:8096 \
-v /ruta/config:/config \
-v /ruta/cache:/cache \
-v /ruta/media:/media \
–restart unless-stopped \
jellyfin/jellyfin:latest
Compilación desde código fuente (desarrollo)
Requiere .NET 10 SDK, ffmpeg y el cliente web (jellyfin-web) compilado o descargado por separado. El repositorio principal contiene solo el servidor backend.
cd jellyfin
# Obtener cliente web (compilar o copiar de instalación existente)
dotnet run –project Jellyfin.Server –webdir /ruta/absoluta/jellyfin-web/dist
Acceder al proyecto
Interfaz web
Accede a http://localhost:8096 (o la IP del servidor) para el asistente de configuración inicial y la interfaz de usuario.
Documentación de API
Disponible en http://localhost:8096/api-docs/swagger/index.html para explorar endpoints REST.
Casos de uso
- Servidor multimedia personal autohospedado para películas, series, música y fotos
- Alternativa privada a Plex/Emby sin dependencia de cuentas en la nube
- Streaming local y remoto con transcodificación adaptativa
- Gestión de biblioteca familiar con control parental y perfiles de usuario
- Televisión en vivo y grabadora DVR con sintonizadores de red compatibles
- Sincronización de contenido para viajes o conexiones limitadas
- Backend para aplicaciones de terceros mediante API REST documentada
Configuración avanzada
Ejecutar sin cliente web integrado
Para desarrollo frontend separado, desactiva el alojamiento del cliente web estático usando la variable de entorno o bandera de línea de comandos.
# o
dotnet run –project Jellyfin.Server — –nowebclient
Alojamiento del cliente web por separado
El repositorio jellyfin-web permite servir el frontend desde un servidor de desarrollo webpack para iteración rápida. Requiere configurar CORS y proxy inverso en el backend.
npm run dev
# En Jellyfin.Server con –nowebclient y configuración de proxy
Gestión y mantenimiento
Actualización de contenedor Docker
Descarga la nueva imagen y recrea el contenedor manteniendo los volúmenes de configuración y datos.
docker stop jellyfin
docker rm jellyfin
# Ejecutar docker run original con mismos volúmenes
Copias de seguridad
Respalda el directorio /config (base de datos, configuración, claves) y /cache (imágenes, metadatos). La biblioteca multimedia (/media) se respalda según tu estrategia de datos.
Logs y diagnóstico
Los logs se escriben en /config/log dentro del contenedor. Nivel de detalle configurable desde la interfaz web en Panel de control > Registro.
# O inspeccionar archivos en /ruta/config/log/
Stack técnico
- C# / .NET 10
- ASP.NET Core
- Entity Framework Core
- SQLite (base de datos por defecto)
- ffmpeg / jellyfin-ffmpeg
- Docker (imagen oficial multi-arquitectura)
- Swagger/OpenAPI
- TypeScript / Vue.js (cliente web en repositorio separado)
Referencias oficiales
- Repositorio oficial en GitHub: https://github.com/jellyfin/jellyfin
- Sitio web y documentación oficial: https://jellyfin.org/docs/
- Guía de instalación oficial: https://jellyfin.org/docs/general/installation/
- Imagen Docker en Docker Hub: https://hub.docker.com/r/jellyfin/jellyfin
- Cliente web (jellyfin-web): https://github.com/jellyfin/jellyfin-web
- Canal de comunidad en Matrix: https://matrix.to/#/#jellyfinorg:matrix.org
- Portal de solicitud de características: https://features.jellyfin.org/
- Instancia de traducción (Weblate): https://translate.jellyfin.org
Apoya el canal GENBYTE
¿Te ha sido útil este contenido?
Suscríbete a YouTube
Newsletter GENBYTE
Ko-fi
Contacto: [email protected]
