Qué saber antes de actualizar de v3.4.0 a v2026.7.2

Soy responsable de una instalación de Discourse basada en Docker que se ejecuta en Ubuntu y que heredé como parte de un proyecto de código abierto. Durante años, la actualizaba mediante git pull && ./launcher rebuild app y luego a través de la interfaz de administración en /admin/update. Sin embargo, dejé de actualizar de manera tan casual después de una experiencia dolorosa durante una actualización incompatible causada por docker_manager en enero de 2024 (ver los comentarios en el commit aquí y el commit revertido aquí).

Han pasado 2,5 años y necesito retomar el ritmo de actualizaciones, pero todavía me siento un poco nervioso por la última actualización que se rompió. Lo que me gustaría entender es qué debería saber antes de intentar actualizar de v3.4.0 a v2026.7.2. Nuestro sitio no utiliza plugins adicionales y la única configuración especial de la que tengo conocimiento es que usamos una URL de Discourse Connect para tener SSO con nuestro sitio principal de la comunidad.

¿Es tan simple como?

cd /var/discourse
git pull
./launcher rebuild app

Y luego actualizar a través de la interfaz de administración? ¿Hay algún paso intermedio del que deba estar al tanto al pasar de v3.4.0 a v2026.7.2?

Gracias,

Cory

O … (dado que estás nervioso) … haz una copia de seguridad (de todos modos) y configura un servidor completamente nuevo, restaura la copia de seguridad y luego redirige el dominio al nuevo servidor una vez que hayas terminado.

Lo único grande con lo que te encontrarás es que hay una actualización importante de Postgres (a la versión 18). Si construyes un servidor nuevo, no tendrás que lidiar con ese proceso de actualización.

También existe un pequeño riesgo de que los plugins o componentes de tema en los que dependes no hayan sido mantenidos, especialmente si están escritos por terceros menos activos.

La nerviosidad es la razón por la que los administradores de sistemas (SA) de Discourse experimentados utilizan una configuración de dos contenedores, para que puedas iniciar las actualizaciones antes de confirmarlas (aunque eso no ayuda tanto cuando tienes una gran actualización de Postgres, pero estas ocurren con poca frecuencia).