datosgobar / georef-ar-api

API del Servicio de Normalización de Datos Geográficos de Argentina.
https://apis.datos.gob.ar/georef
MIT License
150 stars 31 forks source link

No puedo instalar la API sobre docker #219

Open blauerwolf opened 1 year ago

blauerwolf commented 1 year ago

Siguiendo el procedimiento para instalacion, hay un error de dependencias al momento de construirse el contenedor georef-api_es01 con el paquete libgeos-3.9.0

El contenedor no se inicia y la API no es accesible desde el puerto 8080.

De reemplazar libgeos-3.9.0 con libgeos-dev se construye el contenedor, pero el indexado no se ejecuta bien y la API no responde correctamente.

¿alguna sugerencia para la instalacion via docker?

pavloae commented 1 year ago

Hola! Hay un nuevo commit donde se mapea el puerto de elastic. También asegurate de tener ambos contenedores en la misma red y que esté bien configurado el archivo config/georef.cfg (podés copiarlo desde docker/georef.example.cfg) con ES_HOSTS = ['es01'] Durante el indexado podrías quedarte corto de memoria; en ese caso deberías modificar la variable JAVA_OPTS en el archivo docker/.env y volver a construir el contenedor. En todo caso podés compartir la salida en donde indique el error si no llega a funcionar.

blauerwolf commented 1 year ago

Buen día,

muchas gracias por la pronta respuesta. Sigo teniendo errores al momento de correr docker-compose up -d

El error que veo es en Dockerfile_api, que para la imagen base python:3.9 no encuentra el paquete libgeos-3.9.0

Probé cambiar la versión base, pero sin éxito, también utilizar el paquete libgeos-dev, con el mismo resultado.

g7

blauerwolf commented 1 year ago

Adicionalmente, la salida del comando docker-compose exec app make index al crear el contenedor con el paquete libgeos-dev es (ver adjunto):

georef-ar-api_indexado.txt

pavloae commented 1 year ago

Respecto de esto último, la app no está encontrando los archivos *.ndjson que deberían alojarse en la carpeta source/

blauerwolf commented 1 year ago

los ndjson de la carpeta sources se generan durante la creación de los contenedores? En mi caso la carpeta resulta vacía.

pavloae commented 1 year ago

No. Los ndjson los tenés que proporcionar vos: ya sea generándolos con georef-ar-etl (también dockerizado), descargandolos o indicando una url. Tenés urls de descarga en este archivo: https://github.com/datosgobar/georef-ar-api/blob/master/config/georef.example.cfg (Aunque son archivos que no se actualizan hace unos años)