Repositorio de los diferentes componentes del sistema de almacenamiento y análisis de los datos del transporte público del Gran Concepción.
## Uso
### Creación de los contenedores
Se dispone del archivo `docker-compose.yaml` que permite construir los contenedores a partir de las diferentes imagenes.
Para construir las imagenes ejecute en el directorio:
```
docker-compose build
```
Para subir las imagenes al repositorio configurado en el archivo, ejecute:
```
docker-compose push
```
### Instalación del enjambre
Se deja el archivo `docker-compose.srv.yaml` con una configuración básica de un enjambre del proyecto. Primero, debe crear los volumenes externos donde se almacenan los estados persistentes de la base de datos:
```
docker volume create static_gtfs_volume
docker volume create pgdata_web
docker volume create pgdata_hot_gtfs
```
Una vez creados los volumenes persistentes, para correr una instancia del enjambre con el nombre `prueba-tpmc` ejecute:
Esto dejará corriendo los contenedores en el enjambre, cada uno se encuentra sirviendo sus endpoints configurados en el servicio y requiere adicionalmente un proxy inverso haciendo relay a de los requests a los contenedores correctos.
### Disclaimer
Se deben crear manualmente las schemas en el `system_db`:
```
docker ps
docker exec -it hash#del#contendor#system_db bash
psql -U postgres
\c docker
create schema doc;
create schema gestion;
create schema registros;
create schema usuarios;
```
Luego, enviar una solicitud al contenedor `private-dynamic` crea las tablas del modelo una vez que los schemas se encuentran creados.
#### Este procedimiento es temporal
# TODO
* Avanzar exponiendo endpoints dinamicos en `public-dynamic`: listado de archivos GTFS para descargar y mapa de paraderos.
* Programar la lógica para la carga de los GTFS-Estáticos a la bases de datos en `carga-gtfs`.