Aloja tu propio Netflix personal con Jellyfin en Raspberry Pi para ver tus videos desde cualquier sitio con Wireguard

Si has estado atento a los últimos artículos, hace poco exploramos como hacer una unidad de red para almacenar todos tus archivos y mencioné que esto será útil en proyectos futuros:

https://ardumaster.com/crea-un-disco-en-linea-con-raspberry-y-samba

Pues bien, ¡ha llegado uno de estos proyectos! En este artículo te explicaré como crear tu propio servicio de streaming gratuito y alojado en tu Raspberry Pi utilizando Jellyfin:

The Free Software Media System | Jellyfin
The volunteer-built media solution that puts you in control of your media. Stream to any device from your own server, with no strings attached.
Página de Jellyfin.

El disco en línea nos servirá para ir añadiendo archivos a nuestro Netflix personal de forma sencilla, basta con hacer que el directorio de archivos de nuestro servicio de Jellyfin esté incluido en la carpeta que hemos compartido con Samba.

Como en el artículo sobre el disco de red, recomiendo trabajar con un disco duro externo USB como los de Seagate:

💡
En calidad de Afiliado de Amazon, obtengo ingresos por las compras adscritas que cumplen los requisitos aplicables

Seagate Expansion Portable Drive 1TB

Ver en Amazon

Instalamos Jellyfin

Instalar Jellyfin no es tan sencillo como instalar un repositorio por defecto en nuestra Raspberry Pi, pero tampoco es un proceso tan difícil. Empecemos por instalar un par de utilidades que necesitaremos más adelante:

ardumaster@little-monkey:~ $ sudo apt install curl gnupg
Instalamos Curl y gnupg

Ahora instalamos la llave para el repositorio de Jellyfin, añadimos su repositorio y lo configuramos:

ardumaster@little-monkey:~ $ sudo mkdir -p /etc/apt/keyrings
ardumaster@little-monkey:~ $ curl -fsSL https://repo.jellyfin.org/jellyfin_team.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/jellyfin.gpg
ardumaster@little-monkey:~ $ cat <<EOF | sudo tee /etc/apt/sources.list.d/jellyfin.sourcesTypes: debURIs: https://repo.jellyfin.org/$( awk -F'=' '/^ID=/{ print $NF }' /etc/os-release )Suites: $( awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release )Components: mainArchitectures: $( dpkg --print-architecture )Signed-By: /etc/apt/keyrings/jellyfin.gpgEOF
Es algo largo, pero no te preocupes.

Actualizamos las fuentes de nuestra Raspberry para que encuentre el nuevo repositorio:

ardumaster@little-monkey:~ $ sudo apt update
Actualizamos fuentes.

Y ya podemos instalar Jellyfin!

ardumaster@little-monkey:~ $ sudo apt install jellyfin
Lo instalamos como si fuera otro paquete más.

Configuramos Jellyfin

Ya tenemos Jellyfin instalado y listo, solo falta configurarlo. Para ello, empezamos dirigiéndonos a la siguiente dirección desde un navegador web:

IP_de_tu_raspberry:8096

Por ejemplo, para mi sería 192.168.1.85:8096. El 8096 es el puerto. Recuerda que puedes encontrar tu IP con el siguiente comando:

ardumaster@little-monkey:~ $ hostname -I
192.168.1.85 para mi

Nos encontraremos la siguiente página web en la cual podremos empezar a configurar nuestro servidor:

Iniciamos la configuración.

Seguimos la configuración guiada y seleccionamos crear una nueva biblioteca de medios. Esto es una categoría de archivos (series, películas, videos... etc.) asociada a una carpeta en la cual hemos copiado los archivos previamente:

Añadimos una biblioteca de medios.

En mi caso, voy a hacer una biblioteca de medios nueva llamada películas para poder ver mis películas donde quiera.

Ajustamos el tipo de contenido y buscamos la carpeta con nuestros videos.

Ya tengo todas mis películas en una carpeta de mi disco externo, asi que añado una carpeta a esta biblioteca y selecciono mi directorio de películas:

Seleccionamos la carpeta con nuestros videos navegando por el explorador.

Así de sencillo, repite el proceso si quieres añadir más medios. Cuando hayas acabado podremos terminar la configuración.

Terminamos la configuración.

Después de unos minutos, Jellyfin habrá escaneado tu biblioteca de medios y podrás acceder a tus películas y series favoritas como si tuvieses tu propio Netflix privado.

IP estática

Es muy útil fijar una IP estática, para siempre saber en que IP estará tu Jellyfin, aunque no es crucial, ya que puedes volver a buscarla siempre que cambie.

Sin embargo, no es difícil asignar una IP estática y creo que merece la pena. Ya hemos cubierto este tema en el blog, si quieres saber cómo hacerlo, puedes consultar la sección correspondiente de este artículo:

Publica tu página web con Raspberry Pi desde casa
Configura tu página web personal con nginx desde tu casa y compra un dominio en Namecheap para acceder a tu página desde el mundo entero.

Accedemos desde cualquier sitio con un VPN

Si has seguido el tutorial hasta ahora, podrás acceder a tu servidor de contenido desde cualquier lugar de tu red local, pero si lo que quieres es poder ver tus series y películas favoritas desde cualquier lugar del mundo, recomiendo que accedas a tu red local a través de una VPN, es mucho más seguro que conectar tu sistema a internet directamente:

Te recomiendo usar Wireguard como VPN; ya hemos hablado de como instalarlo y configurarlo de forma sencilla en nuestro artículo sobre eliminar anuncios con pi-hole:

Olvídate de anuncios estés donde estés con Pi-hole y WireGuard
Elimina anuncios en apps y internet en tu LAN y a distancia con WireGuard, Pi-Hole y Duck DNS
Haz clic aquí para averiguar como instalar y configurar tu VPN con Wireguard de forma sencilla.

Conclusiones

Poder ver tus contenidos donde quieras y como quieras es realmente especial. A mi me encanta compartir mi servidor con mis amigos y enseñarles mi colección cuidadosamente seleccionada.

¿Qué medios incluiririas tú en tu colección?