Intenté actualizar a través de la administración, no estoy seguro de lo que sucedió, pero las páginas de administración quedaron en blanco mientras que el front estaba bien. Decidí actualizar de nuevo a través de la línea de comandos y obtuve este error
Errno::ENOENT: No such file or directory @ rb_sysopen - /etc/postgresql/15/main/postgresql.conf
cd /var/discourse; ./launcher rebuild app
Se detectó la arquitectura x86_64.
Asegurando que el lanzador esté actualizado
Obteniendo origen
El lanzador está actualizado
2.0.20240708-0023: Extrayendo de discourse/base
Digest: sha256:025e9c1f68
Estado: La imagen está actualizada para discourse/base:2.0.20240708-0023
docker.io/discourse/base:2.0.20240708-0023
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2025-02-06T20:57:43.044950 #1] INFO -- : Leyendo desde stdin
I, [2025-02-06T20:57:43.066724 #1] INFO -- : Archivo > /etc/service/postgres/run chmod: +x chown:
I, [2025-02-06T20:57:43.072432 #1] INFO -- : Archivo > /etc/service/postgres/log/run chmod: +x chown:
I, [2025-02-06T20:57:43.077790 #1] INFO -- : Archivo > /etc/runit/3.d/99-postgres chmod: +x chown:
I, [2025-02-06T20:57:43.083299 #1] INFO -- : Archivo > /root/install_postgres chmod: +x chown:
I, [2025-02-06T20:57:43.087962 #1] INFO -- : Archivo > /root/upgrade_postgres chmod: +x chown:
FALLÓ
--------------------
Errno::ENOENT: No such file or directory @ rb_sysopen - /etc/postgresql/15/main/postgresql.conf
Ubicación del fallo: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/replace_command.rb:11:in `read'
reemplazo falló con los parámetros {"filename"=>"/etc/postgresql/15/main/postgresql.conf", "from"=>"data_directory = '/var/lib/postgresql/15/main'", "to"=>"data_directory = '/shared/postgres_data'"}
el arranque falló con el código de salida 1
** FALLÓ EL ARRANQUE ** por favor desplázate hacia arriba y busca mensajes de error anteriores, puede haber más de uno.
./discourse-doctor puede ayudar a diagnosticar el problema.
Acabo de intentar actualizar otra instancia en otro servidor y funcionó. Ambos servidores son droplets de DO con las mismas especificaciones.
No estoy seguro de lo que está pasando.
Esa es una imagen de Docker mucho más antigua que no tiene instalados los paquetes de PostgreSQL 15, de ahí el error:
Probablemente tu archivo launcher ha sido modificado y se ha bloqueado para usar la imagen de Docker antigua mencionada anteriormente. Puedes cambiarla a la imagen más reciente resaltada a continuación y luego intentar reconstruir de nuevo. (Realiza las copias de seguridad necesarias de antemano).
Sin embargo, durante la reconstrucción todavía está tomando la imagen anterior, así que ¿de dónde se está tomando esta imagen anterior? ¿Cómo lo compruebo?