Aller au contenu principal

Déploiement du démonstrateur Carto4CH

Introduction

Cette documentation explique comment sont hébergées et publiées les applications du démonstrateur.

Pré-requis techniques

  • un accès à internet
  • Une configuration matérielle avec au moins 16 Go de RAM
  • Installer Docker et docker-compose
  • Installer Make

Architecture générale

Rappel de l'architectureLes briques documentées
Le démonstrateur est une cartographie fonctionnelle de démonstration.
Son objectif est de donner un exemple de ce qui est attendu par le projet Carto4CH.

Nous expliquerons dans cette documentation l'hébergement de ce démonstrateur et le fonctionnement de chacune de ses briques :
  • Les deux instances de données de démonstration (Instance A et Instance B)
  • Les 3 applications permettant de cartographier les données dans chaque instance
  • L'instance miroir
  • Les visualisation en réseau

Déploiement via Docker

Projets d'originesGit clone + AddOn
Chaque projet docker d'un serveur A ou B effectue un git clone des projets Archipelago-carto4CH (middleware et frontend) ou My-competence.

Ensuite, il récupère ses fichiers spécifiques dans le répertoire AddOn pour customiser les couleurs, le titre ou les paramètres d'interopérabilité

Briques déployées

Vous trouverez sur le Gitlab Huma-Num du projet Carto 4CH > Carto 4CH, l'ensemble des configurations docker permettant de faire tourner le démonstrateur sur le serveur Huma-Num.

La configuration Docker est constituée de 11 conteneurs dockers.

Rappel de l'infrastructureLes containers
Les conteneurs "supports"

- Traefik (gestion du réseau, ports, https, certificats)
- Jena/Fuseki (Triplestore)
- Redis (cache)

Les conteneurs "applicatifs"

De l'instance A
- Middleware A (data-a)
- BO A
- MY A
De l'instance B
- Middleware B (data-b)
- BO Serveur B
- MY Serveur B

De l'instance miroir (C)

Du portail Carto 4CH

Tous ces containers peuvent être lancés par une simple commande : make start-prod

Cette commande appelle le fichier docker-compose-prod.yaml, qui lance les 11 conteneurs.

Il est possible de voir les logs du serveur en utilisant la commande : make log-prod

Fonctionnement des conteneurs applicatifs

Principe de fonctionnement

Chaque conteneur applicatif commence par faire un git clone d'un des projets Carto 4CH (Archipelago ou My-competences), puis écrase certains fichiers par une configuration spécifique pour l'instance.

Les middlewares A/B/C

Les 3 middlewares (data-a, data-b et data-c) clonent le projet Archipelago Carto4CH > middleware, et surchargent les fichiers présents dans le répertoire AddOn.

Dans le cas du miroir, on ajoute le fichier services/mirror.service.js.

Les Back-office A/B

Les 2 back-office (bo-a et bo-b) clonent le projet Archipelago Carto4CH > frontend, et surchargent leurs fichiers en récupérant ceux présents dans le répertoire AddOn :

  • titre "Server A"
  • couleurs,
  • configuration d'interopérabilité : en effet, nous allons permettre au serveur A de voir les données du serveur B et inversement.

My-competences A/B

Les 2 interfaces My-competences (my-a et my-b) clonent le projet My-competences, et surchargent leurs fichiers en récupérant ceux présents dans le répertoire AddOn :

  • titre,
  • couleurs
  • configuration d'interopérabilité

Les visualisations

Le démonstrateur propose 3 visualisations :

  • Une visualisation des données du middleware A
  • Une visualisation des données du middleware B
  • Une visualisation des données du middleware C (miroir) pour la visualisation générale

Pour en savoir plus, lire Visualisation en réseau > démonstrateur