Instalación¶
Pasos de instalación
Para instalar SITMUN, sigue estos pasos:
-
Clona el repositorio con submódulos y entra en el directorio:
-
Prepara el entorno:
- Linux/macOS:
- Windows:
-
Arranca la plataforma SITMUN:
Nota: Por defecto se utiliza PostgreSQL. Para usar Oracle:
-
Verifica la instalación:
-
Accede a las aplicaciones:
- Visor: http://localhost:9000/viewer
- Administrador: http://localhost:9000/admin
- Backend API: http://localhost:9000/backend
Credenciales por defecto:
- Usuario:
admin - Contraseña:
admin
Servicios
Los servicios están definidos en el archivo docker-compose.yml.
Los siguientes servicios están disponibles:
front, un servidor web nginx en el puerto 9000 que publica la aplicación del visor de SITMUN (http://localhost:9000/viewer) y la aplicación administrativa de SITMUN (http://localhost:9000/admin) y enruta las solicitudes a los serviciosbackend(http://localhost:9000/backend) yproxy(http://localhost:9000/middleware)backend, que expone el API de autenticación, autorización y configuración de SITMUN (puerto 9001)proxy, que expone el API proxy-middleware de SITMUN y que se comunica con el serviciobackend(puerto 9002)postgres: base de datos PostgreSQL 16 que almacena los datos en el volumenpgdata(puerto 9003)oracle: base de datos Oracle 23c alternativa (puerto 9004)example: base de datos PostgreSQL de ejemplo (puerto 9005)
block-beta
columns 5
space:2
front["<b>front</b><br>nginx<br>localhost:9000"]
space:2
space:5
postgres[("<b>postgres</b><br>PostgreSQL 16<br>SITMUN database")]
space:1
backend["<b>backend</b><br>Spring Boot<br>SITMUN backend"]
space:1
proxy["<b>proxy</b><br>Spring Boot<br>SITMUN proxy-middleware"]
front -- "/middleware" --> proxy
front -- "/backend" --> backend
proxy -- "/api/config/proxy" --> backend
backend -- "jdbc" --> postgres
Configuración
Las variables de entorno se definen en el archivo .env (si no existe, ./setup.sh copiará .env.example). Variables clave:
COMPOSE_PROFILES: perfiles activos (postgres/oracle). Por defecto:postgres.DATABASE,DATABASE_URL,DATABASE_USERNAME,DATABASE_PASSWORD.FORCE_USE_OF_PROXY: fuerza el uso del proxy (falsepor defecto).
Desinstalación
Para detener y eliminar todos los servicios, volúmenes y redes definidos en el archivo docker-compose.yml, usa:
En desarrollo
Esta sección está siendo actualizada. Las instrucciones de instalación son un ejemplo de como serán en un futuro.
Una vez completada la instalación de los prerrequisitos y la configuración, puedes proceder con la compilación del backend siguiendo estos pasos:
- Descarga el proyecto https://github.com/sitmun/sitmun-backend-core en tu equipo.
- Crea un proyecto nuevo a partir de las plantillas de la carpeta
deployy añádelo asettings.gradle. - Configura el fichero
application.ymldel nuevo proyecto. Ver Configuración. - Ejecutar el siguiente comando desde la raíz del proyecto en una terminal. Este comando genera el fichero JAR del proxy en la ruta
Los sistemas operativos en los que se pueden desplegar el backend son:
- Linux: como servicio init.d, como servicio systemd o mediante un script de arranque.
- Windows: puede ejecutarse como un servicio Windows usando la herramienta WinSW o mediante un script de arranque.
Una vez completada la instalación de los prerrequisitos y la configuración, puedes proceder con la compilación del proxy siguiendo estos pasos:
- Descarga el proyecto https://github.com/sitmun/sitmun-proxy-middleware en tu equipo.
- Abre el proyecto descargado y modifica del fichero
application.ymllas propiedadessecurity.authentication.middleware.secretysitmun.config.url.security.authentication.middleware.secretdebe contener el token que se ha configurado en el backend para que el proxy pueda autenticarse.sitmun.config.urldebe contener la URI de la API de Configuración y Autorización del backend. Si el proxy y el backend son servicios internos de la misma red, se recomienda usar el nombre interno o la dirección IP interna del backend. Ver Configuración. -
Ejecutar el siguiente comando desde la raíz del proyecto en una terminal.
Este comando genera el fichero JAR del proxy en la ruta
./build/libs/con el nombresitmun-proxy-middleware-[version].jar.
Los sistemas operativos en los que se pueden desplegar el proxy son:
- Linux: como servicio init.d, como servicio systemd o mediante un script de arranque.
- Windows: puede ejecutarse como un servicio Windows usando la herramienta WinSW o mediante un script de arranque.
El proxy middleware puede ser desplegado usando Docker.
En la raíz del proyecto se encuentra la carpeta docker,
en la cual se puede encontrar el fichero docker-compose.yml y el fichero Dockerfile.
Si se quiere desplegar únicamente el proxy, se puede hacer construyendo y arrancando la imagen del Dockerfile.
Como se ha comentado anteriormente,
el proxy depende de la API de Configuración y Autorización y,
por lo tanto, es importante tener correctamente configurada la URL a la API en el fichero de configuración
(sitmun.config.url).
Es posible desplegar el proxy middleware en local sin necesidad de Docker mediante JVM ejecutando el siguiente comando en la ubicación del fichero JAR generado al construir el proxy.
Una vez completada la instalación de los prerrequisitos puedes proceder con la compilación del visor de mapas siguiendo estos pasos:
- Descarga el proyecto https://github.com/sitmun/sitmun-viewer-app en tu equipo.
- Abre el proyecto descargado y modifica el parámetro
apiUrlen el archivoenvironments.tspara que apunte a la URI donde está desplegado el backend. Ver Configuración. -
Desde la consola de comandos, navega hasta el directorio raíz del proyecto y ejecuta el comando:
Donde
<conf>es la configuración y<baseHref>es la URI donde se va a desplegar. Este comando compilará el visor de mapas para el entorno de producción y generará los archivos en la carpetadist/sitmun-viewer-app.
Para desplegar el visor de mapas en un servidor web, copia la carpeta sitmun-viewer-app a tu servidor web.
Configura tu servidor para redirigir las solicitudes de archivos no encontrados a index.html
Es fundamental configurar correctamente esta redirección para el correcto funcionamiento del visor de mapas.
No olvides configurar la redirección a index.html en tu servidor
Si no se configura correctamente la redirección, es posible que la navegación dentro del visor de mapas funcione correctamente, pero al hacer clic en un enlace externo (por ejemplo, un enlace de correo electrónico), al introducir una URI directamente en la barra de direcciones o simplemente al refrescar la página, se produzca un error 404. Esto ocurre porque estas peticiones son manejadas directamente por el navegador y no por enrutador de Angular que gestiona la navegación dentro del visor de mapas. Ver Routed apps must fall back to index.html en la documentación oficial de Angular para más información.
Una vez completada la instalación de los prerrequisitos puedes proceder con la compilación del administrador siguiendo estos pasos:
- Descarga el proyecto https://github.com/sitmun/sitmun-admin-app en tu equipo.
- Abre el proyecto descargado y modifica el parámetro
apiUrlen el archivoenvironments.tspara que apunte a la URI donde está desplegado el backend. Ver Configuración. -
Desde la consola de comandos, navega hasta el directorio raíz del proyecto y ejecuta el comando:
Donde
<conf>es la configuración y<baseHref>es la URI donde se va a desplegar. Este comando compilará el administrador para el entorno de producción y generará los archivos en la carpetadist/sitmun-admin-app.
Para desplegar el administrador en un servidor web, copia la carpeta sitmun-admin-app a tu servidor web.
Siguiente paso: Creando una aplicación