Proceso de actualización de GeoNode 3.x a 4.x

El propósito de este documento es detallar el proceso que implementaremos para actualizar GeoNode de la versión 3.x a la versión 4.x.Este documento se propone para garantizar que el proceso de actualización sea eficiente y comprensible para todos.Es importante tener en cuenta que esta guía es específicamente para una instalación de GeoNode que se ejecuta en Docker.

El objetivo de este documento es que todos comprendan los procesos y pasos necesarios para realizar la migración.

Tabla de contenido

  • Procedimiento de migración

  • Posibles problemas

Procedimiento de migración de versión

1. Descargue la nueva versión

Con el siguiente comando descargaremos la nueva versión de GeoNode desde la fuente oficial o el repositorio correspondiente:

https://github.com/GeoNode/geonode.git -b <branch-or-tag>

Nota: Reemplace <branch-or-tag> con la rama o etiqueta apropiada para la versión que desea instalar.

Se recomienda hacer esto en un directorio separado para mantener intacta la versión anterior en caso de necesidad.

  • Directorio de la versión anterior:

my/work/dir/geonode3
  • Directorio de la nueva versión:

my/work/dir/geonode4

2. Detener el GeoNode actual

Ejecute el siguiente comando en el directorio donde está implementado el GeoNode actual para detener los contenedores Docker asociados:

docker compose down

3. Modifique el archivo GeoNode .env

Abra el archivo .env del nuevo GeoNode en un editor de texto:

nano .env

Ajuste las variables de entorno para que coincidan con la configuración de la versión anterior de GeoNode.Esto puede incluir variables relacionadas con la base de datos, URL, puertos, etc.

4. Inicie los contenedores GeoNode

Una vez que haya realizado los cambios necesarios en el archivo .env, ejecute el siguiente comando para iniciar los contenedores GeoNode en la nueva versión:

docker compose up -d

Posibles problemas

La actualización de versión de GeoNode también implica cambios en algunos de sus componentes, lo que puede generar diversos problemas.A continuación, enumeramos algunos problemas comunes y sus posibles soluciones:

Contenedor PostgreSQL en reinicio constante

Registros:

2024-02-21 18:06:14.056 UTC [1] FATAL:  database files are incompatible with server

2024-02-21 18:06:14.056 UTC [1] DETAIL:  The data directory was initialized by PostgreSQL version 13, which is not compatible with this version 15.4.</strong>

Causa: La versión de PostgreSQL del GeoNode original era inferior a la actual.

Solución: Baje la versión de PostgreSQL para que coincida con la versión instalada previamente en el archivo GeoNode docker-compose.yml.

Contenedor Nginx en reinicio constante

Registros:

2024/02/21 18:11:49 [emerg] 1#1: host not found in "$HTTP_PORT" of the "listen" directive in /etc/nginx/nginx.conf:25

nginx: [emerg] host not found in "$HTTP_PORT" of the "listen" directive in /etc/nginx/nginx.conf:25

Causa: Nginx está teniendo problemas para reemplazar las variables de puerto del archivo nginx.conf.envsubst.

Solución: Reemplace manualmente esas variables con los puertos correspondientes una vez en el archivo nginx.conf.envsubst.Después de esto, Nginx debería funcionar correctamente y reemplazar las variables normalmente en el futuro.