Go to file
ifiguero 9769d00e2c patch de conexión a la db con swarm 2023-02-28 14:27:05 -03:00
Docker
carga-gtfs
font
front-static
login-mecanics patch de conexión a la db con swarm 2023-02-28 14:27:05 -03:00
models
private-dynamic patch de conexión a la db con swarm 2023-02-28 14:27:05 -03:00
public-dynamic patch de conexión a la db con swarm 2023-02-28 14:27:05 -03:00
static
templates
LICENSE
README.md
app.py
daemon.py
docker-compose.srv.yaml
docker-compose.yml

README.md

Sistema de Gestión del Transporte Público Metropolitano

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:

docker stack deploy prueba-tpmc --compose-file docker-compose.srv.yaml

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.
  • Consolidar los modelos en archivos .sql