Invidious se describe a sí mismo como un front-end alternativo de Software Libre para YouTube. En términos básicos, esto significa acceder a YouTube a través de una interfaz diferente en un dominio diferente que elimina la publicidad, el seguimiento de los usuarios y la dependencia de las suscripciones de Google.
Como hemos mencionado anteriormente, está licenciado bajo AGPL-3.0 y Invidious puede ser autoalojado en servidores personales. Se puede montar con Docker pero también se puede hacer una instalación manual.
Recientemente Invidious está metida en "problemas" ya que YouTube ha enviado una notificación al autor del Software indicando que debe de "apagar" Invidious en 7 días. Está claro que Google no sabe muy bien como funciona el mundo del Software Libre, así que os vamos a explicar como configurar e instalar una instancia de Invidious.
Requisitos de Hardware
Para que funcione correctamente únicamente necesita 512MB de RAM. Para instancias públicas es recomendable un mínimo de 4GB de RAM, 2vCPU y 200mbps de ancho de banda y un mínimo de 20TB de tráfico.
Instalación de Invidious
Lo primero será instalar todo lo necesario para que funcione correctamente, así que lo primero será instalar dependencias que necesitaremos:
apt install libssl-dev libxml2-dev libyaml-dev libgmp-dev libreadline-dev postgresql librsvg2-bin libsqlite3-dev zlib1g-dev libpcre3-dev libevent-dev git make
Instalación de Crystal
Para utilizar Invidious es necesario instalar Crystal, para ello realizaremos lo siguiente:
curl -fsSL https://crystal-lang.org/install.sh | sudo bash -s -- --channel=nightly
Creamos usuario y clonamos repositorio
Creamos usuario para gestionar el programa en el sistema:
useradd -m invidious
Accedemos al usuario y clonamos repositorio:
su - invidious
git clone https://github.com/iv-org/invidious
exit
Configuramos PostgreSQL
Iniciamos el servicio de PostgreSQL:
systemctl enable --now postgresql
Y creamos el usuario y la base de datos:
sudo -i -u postgres
psql -c "CREATE USER kemal WITH PASSWORD 'supercontraseña';"
createdb -O kemal invidious
exit
Configuramos Invidious
Lo primero será acceder al usuario y entrar al directorio del repositorio:
su - invidious
cd invidious
Y compilamos:
make
Creamos el fichero de configuración:
cp config/config.example.yml config/config.yml
Y hacemos la migración de la base de datos:
./invidious --migrate
crystal build src/invidious.cr -Ddisable_quic --release
exit
Configuración de SystemD
Configuramos ahora SystemD, primero copiamos el fichero que corresponde:
cp /home/invidious/invidious/invidious.service /etc/systemd/system/invidious.service
Y lo habilitamos:
systemctl enable --now invidious.service
Ahora tendremos el servicio escuchando por el puerto 3000. Lo siguiente será configurar un Proxy Inverso con Nginx.
Configurar Proxy Inverso con Nginx
Lo siguiente será configurar un Proxy Inverso para acceder con dominio a nuestra instancia de Invidious. Para ello deberemos de seguir estos pasos:

Para este caso deberemos de configurar el Proxy Inverso con Nginx utilizando el puerto 3000.

Para más configuración podéis revisar la documentación oficial de Invidious.
Comentarios