Actualización de Video (Peertube)

Hola!

He actualizado el peertube a la versión menor 5.2.1.

Un saludo,
Marcel

3 Me gusta

Hola!

El próximo jueves 14 de Diciembre actualizaré el peertube a la versión 6.0.1.

Si alguien quiere acompañarme, estaré en directo a las 19:00 hora peninsular española.

@titi @blankfosk

1 me gusta

Joer, ¿6.0.1, ya? Okis, me apunto a la actualización sincrónica :slight_smile:

2 Me gusta

Jo aniré una mica just de temps dijous però intentaré ser-hi^^

1 me gusta

Només per aclarir, és totalment virtual! :slight_smile:

1 me gusta

Hola!

Hemos actualizado a la version 6.0.2 (hace tres días ya había salido otra versión con corrección de algunas cosillas).

Básicamente he seguido las INSTRUCCIONES IMPORTANTES de la versión 6.0.0 y 6.0.1 que indicaban cambios en:

  • El fichero de configuración: /var/www/peertube/config/production.yaml.
  • El fichero de configuración nginx: /etc/nginx/sites-available/video

y luego he seguido las instrucciones genéricas para actualizar con el script de actualización.

cd /var/www/peertube/peertube-latest/scripts && sudo -H -u peertube ./upgrade.sh
sudo systemctl restart peertube

Las características nuevas más importantes (detalladas en las notas de la versión 6.0.0) son:

  • Añadir videos protegidos por contraseña
  • Añadir soporte para guión gráfico (miniatura al pasar por la línea temporal)
  • Añadir la capacidad de las usuarias de reemplazar el fichero de video
  • Añadir soporte para capítulos de video

Un saludo!

4 Me gusta

Brutal! Ya le he añadido capítulos al full album de Delta. Una de las funcionalidades nuevas de peertube 6

4 Me gusta

Que guay, moltissimes gracies!

1 me gusta

Hola!

He actualizado a la versión 6.0.4 sin problemas.

Sólo he tenido que hacer un cambio adicional que estaba en la release 6.0.3:

You must update your nginx configuration like in this commit (line 202 replace location ~ ^(/static/(webseed|web-videos|streaming-playlists)/private/)|^/download { by location ~ ^(/static/(webseed|web-videos|streaming-playlists/hls)/private/)|^/download {)

Esta versión solucionaba un bug dónde no se leían las estadísticas con temas oscuros.

1 me gusta

Ha salido la versión 6.1 de Peertube!

En cuanto pueda actualizo. Entre otras cosas han mejorado la portabilidad de las cuentas.

2 Me gusta

Hola!

He actualizado el Peertube a la versión 6.1.0.

He seguido las instrucciones de aquí:

Al copiar el production.yaml.new que genera el script a production.yaml he tenido que eliminar las anotaciones (eso es evidente, pero no me había fijado) y también eliminar una sección que estaba duplicada (bloque “client:”).

3 Me gusta

Hola,

Al intentar actualizar el peertube a la última versión, me pide una actualización del node de v.18.17 a v18.19. Aún no he conseguido hacerlo, puesto que el npm me dice que ya está en la última versión.

Cómo teníamos instalado ubuntu 20.x he decidido actualizar a la versión LTS 22.x. Estoy en ello, de ahí que pueda haber algunos momentos de inaccesibilidad.

Desastre, no estoy pudiendome conectar al servidor vía SSH… :confused:

Voy a crear otro VPS e intentar restaurar a partir de la copia diaria.

Bueno, parece que tras todo el día, he podido restaurar el peertube. Lo bueno es que ya sabemos que los backups funcionan bien…

Ya estamos en la última versión, 6.2.1.

Si algo va mal, avisad!

EDIT: Diario de migración/restauración.

  1. Lo primero fue crear un nuevo VPS con las mismas características.
  2. Desafortunadamente tuve que instalar ubuntu 20.x porque la imagen del 22 no funciona bien (tras la instalación no puedo conectarme con SSH). Eso tengo que solucionarlo ya porque es muy pesado y lento luego actualizar todo el sistema y pasar a la siguiente versión LTS con do-release-upgrade.
  3. Una vez listo el VPS, he seguido la guía de instalación/migración de peertube.
    3.1. Instalación de peertube limpio:
# Dependencias:
## Nodejs
## https://github.com/nodesource/distributions
sudo apt-get install -y curl
curl -fsSL https://deb.nodesource.com/setup_22.x -o nodesource_setup.sh
sudo -E bash nodesource_setup.sh
sudo apt-get install -y nodejs
node -v
## Yarn
## https://classic.yarnpkg.com/en/docs/install#debian-stable
npm install --global yarn
## Python3 ya estaba instalado
## Common dependences
sudo apt update
sudo apt install certbot nginx ffmpeg postgresql postgresql-contrib openssl g++ make redis-server git cron wget
ffmpeg -version # Should be >= 4.1
g++ -v # Should be >= 5.x
redis-server --version # Should be >= 6.x
## Arrancar PostgreSQL y Redis
sudo systemctl start redis postgresql

# Peertube
## Crear usuario
sudo useradd -m -d /var/www/peertube -s /bin/bash -p peertube peertube
sudo passwd peertube
#Ensure the peertube root directory is traversable by nginx:
ls -ld /var/www/peertube # Should be drwxr-xr-x
chmod 755 /var/www/peertube

## Base de datos
cd /var/www/peertube
sudo -u postgres createuser -P peertube
sudo -u postgres createdb -O peertube -E UTF8 -T template0 peertube_prod
sudo -u postgres psql -c "CREATE EXTENSION pg_trgm;" peertube_prod
sudo -u postgres psql -c "CREATE EXTENSION unaccent;" peertube_prod

## Instalación de peertube
VERSION=$(curl -s https://api.github.com/repos/chocobozzz/peertube/releases/latest | grep tag_name | cut -d '"' -f 4) && echo "Latest Peertube version is $VERSION"
cd /var/www/peertube
sudo -u peertube mkdir config storage versions
sudo -u peertube chmod 750 config/
cd /var/www/peertube/versions
# Releases are also available on https://builds.joinpeertube.org/release
sudo -u peertube wget -q "https://github.com/Chocobozzz/PeerTube/releases/download/${VERSION}/peertube-${VERSION}.zip"
sudo -u peertube unzip -q peertube-${VERSION}.zip && sudo -u peertube rm peertube-${VERSION}.zip
cd /var/www/peertube
sudo -u peertube ln -s versions/peertube-${VERSION} ./peertube-latest
cd ./peertube-latest && sudo -H -u peertube yarn install --production --pure-lockfile
  1. Montar el backup de borg para restaurar la base de datos, ficheros de configuración y el almacenamiento estático.
sshfs anartist@94.176.237.44:/home/anartist/borgbackup borgbackup/
borg extract borgbackup/video::backup_20240910 tmp/peertube_prod-dump_20240910-030003.db
borg extract borgbackup/video::backup_20240910 var/www/peertube/storage #Esto tardo mucho!
borg extract borgbackup/video::backup_20240910 var/www/peertube/config
borg extract borgbackup/video::backup_20240910 etc/nginx/sites-available/video
  1. Restaurar la base de datos (dio unos errores que luego tuve que arreglar cuando arranqué el servicio de peertube).
sudo -u postgres pg_restore -c -C -d postgres tmp/peertube_prod-dump_20240910-030003.db
  1. Copiar los ficheros de configuración y de almacenamiento:
mv var/www/peertube/storage/ /var/www/peertube/
chown -R peertube:peertube /var/www/peertube/storage/
mv var/www/peertube/config/* /var/www/peertube/config/
chown -R peertube:peertube /var/www/peertube/config/*
  1. Copié de los templates el servicio systemd, generé un certificado (comando en la documentación de peertube) y activé la configuración nginx.
sudo certbot certonly --standalone --post-hook "systemctl restart nginx"
cp etc/nginx/sites-available/video /etc/nginx/sites-available/
ln -s /etc/nginx/sites-available/video /etc/nginx/sites-enabled/
systemctl restart nginx
sudo cp /var/www/peertube/peertube-latest/support/sysctl.d/30-peertube-tcp.conf /etc/sysctl.d/
sudo sysctl -p /etc/sysctl.d/30-peertube-tcp.conf
sudo cp /var/www/peertube/peertube-latest/support/systemd/peertube.service /etc/systemd/system/

sudo systemctl daemon-reload
sudo systemctl enable peertube
sudo systemctl start peertube
sudo journalctl -feu peertube
  1. Tras arrancar el servicio, me dio dos tipos de error.
    8.1. Faltaban algunas líneas nuevas en el fichero de configuración production.yaml, sólo tuve que copiarlas del template de su github.
    8.2. Volvieron a salir los mismos errores que cuando restauré, quejándose de líneas duplicadas en la tabla “tag”. Primero eliminé algunas individualmente pero al final había muchas y las eliminé así:
sudo -u postgres psql
\c peertube_prod
select name,count(*) from tag group by name HAVING count(*)>1;
DELETE FROM tag a USING tag b WHERE a.id<b.id AND a.name=b.name;

Una vez conectado, la primera línea sirve para ver las entradas duplicadas por la columna “name” y el segundo elimina el segundo duplicado.

Tras eso el servicio ya arrancó correctamente y está todo accesible.

  1. Esta mañana he vuelto a configurar los backups con borg de esta manera.
1 me gusta

Menuda faena!

Me sabe mal no haber visto ayer los mensajes, podría haberte acompañado en el proceso, aun que fuera solo para dar apoyo moral.

Mil gracias Marcel!

1 me gusta

Tranquilo! jejeje Cosas que pasan.

A parte de lo de la base de datos al final, todo fue bien sólo que lento. Ahora ya sabemos seguro que podemos restaurar (y migrar).

1 me gusta

Hola!

He actualizado el peertube a la versión 6.3.2. sin incidencias.

2 Me gusta