Skip to content

BaseAdresseNationale/ban-plateforme

Repository files navigation

Plateforme de la Base Adresse Nationale

Architecture

La BAN Plateforme contient :

  • Une API synchrone et asynchrone : serveur Express (point d'entrée : server.js). L'API asynchrone envoit des tâches dans la queue du redis, pris en charge par le worker.
  • Un worker (point d'entrée : worker.js) qui récupère les tâches du redis (qui ont été déposées soit par l'API, soit par les scripts).
  • Des scripts (imports, consolidation, exports, ...).

La BAN Plateforme import et export des données d'une base MongoDB.

Installation

Configuration

Pour mettre en place un environnement fonctionnel, vous pouvez partir du fichier .env.sample et le copier en le renommant .env.

Deploiement local avec Docker

Pré-requis

  • Docker
  • Docker-compose

Commandes

Pour déployer l'environnement, lancer la commande suivante :

docker-compose up --build -d

--build : permet de builder les images locales. -d : permet de lancer les conteneurs en arrière plan.

La commande précédente va déployer une architecture locale, interconnectée, avec :

  • un conteneur "db" (image mongo:4.2.23)
  • un conteneur "redis" (image redis:4.0.9)
  • un conteneur "api" (à partir de l'image définie dans le fichier docker-resources/api/Dockerfile.dev) => Au lancement de ce conteneur, un script d'initialisation (défini dans le fichier docker-resources/api/start.sh) va permettre le téléchargement des données requises au démarrage de la plateforme.

Deploiement local sans Docker

Pré-requis

  • Node.js 16 ou supérieur
  • MongoDB 4 ou supérieur
  • Redis
  • yarn ou npm

Commandes

Pour installer les dépendances, lancer la commande suivate :

yarn

Il faut ensuite télécharger les fichiers requis au démarrage de la plateforme avec les commandes suivantes :

yarn prepare-contours ## Prepare les contours administratifs de la France entière.
yarn download-datasets ## Télécharge fantoir.sqlite, gazetteer.sqlite, communes-locaux-adresses.json.

Pour déployer l'api et le worker, lancer les deux commandes suivantes en parallèle :

yarn dev
yarn worker:dev

Autres commandes

yarn compose ## Consolidation des adresses
yarn dist ## Production des fichiers d'export
yarn apply-batch-certification ## Appliquer la mise à jour de la liste des communes certifiées d'office

About

Plateforme d'intégration et de production des données de la Base Adresse Nationale

Resources

License

Stars

Watchers

Forks

Releases

No releases published