Repositorio para levantar el servicio de GeoHealthCheck
Se encuentra un archivo docker-compose.yml
que despliega un entorno Docker para ejecutar GeoHealthCheck (GHC), una herramienta de monitoreo de servicios geoespaciales, con PostgreSQL como base de datos backend.
A continuación, un desglose de cada sección:
version: "3"
Establece la versión de la sintaxis de Docker Compose que se va a utilizar.
services:
ghc_web:
image: geopython/geohealthcheck:latest
container_name: ghc_web
restart: unless-stopped
env_file:
- ghc.env
links:
- postgis_ghc
depends_on:
- postgis_ghc
ports:
- 8083:80
Define un servicio llamado ghc_web que utiliza la imagen geopython/geohealthcheck:latest
. Este servicio se reiniciará automáticamente a menos que se detenga explícitamente. Se carga la configuración del entorno desde dos archivos .env. Se vincula con el servicio postgis_ghc, dependiendo de él. El contenedor escuchará en el puerto 8083 del host y se mapeará al puerto 80 del contenedor.
ghc_runner:
image: geopython/geohealthcheck:latest
container_name: ghc_runner
restart: unless-stopped
env_file:
- ghc.env
links:
- postgis_ghc
depends_on:
- postgis_ghc
entrypoint:
- /run-runner.sh
Define otro servicio llamado ghc_runner con configuración similar a ghc_web. Sin embargo, este servicio utiliza un script de entrada (entrypoint) llamado /run-runner.sh.
postgis_ghc:
image: mdillon/postgis:10-alpine
container_name: postgis_ghc
restart: unless-stopped
env_file:
- ghc.env
volumes:
- ghc_pgdb:/var/lib/postgresql/data
expose:
- 5432
Configura el servicio de base de datos PostgreSQL llamado postgis_ghc. Utiliza la imagen mdillon/postgis:10-alpine
. Se reinicia automáticamente a menos que se detenga explícitamente. Carga la configuración del entorno desde un archivo .ghc.env
. También especifica un volumen para almacenar los datos de la base de datos PostgreSQL. Expone el puerto 5432 para que otros servicios puedan acceder a la base de datos.
Para proceder a la instalación, necesitaremos generar un archivo llamado ghc.env
con la estructura similar a la del archivo que se encuentra en el repositorio, llamado ghc.env.example
Podríamos ejecutar
cp ghc.env.example ghc.env
luego de esto, podemos proceder a levantar los servicios de GHC y Postgresql mediante el uso de docker compose
docker compose up -d
No se especifica directorio para logs. se pueden ver los logs ejecutando docker compose logs -f [--tail=xxx]
Se utilizan el volumen ghc_pgdb
. Que por defecto, la ubicación de este, se encuentra en /var/lib/docker/volumes
El servicio por defecto, se levanta en el puerto 8083. En caso de cambiarlo, ver linea 27 del archivo docker-compose.yml
Para reiniciar los servicios, podemos ejecutar docker compose restart
Ver ghc.env.example
donde se encuentran las variables de configuración para el servicio del SMTP