Mon Espace NIS 2 est un service numérique développé par le laboratoire d'innovation de l'ANSSI, en lien avec l'incubateur BetaGouv de la direction interministérielle du numérique pour soutenir la mise en œuvre française de la directive européenne NIS2.
NIS 2 (Network and Information Security version 2) vise à harmoniser et renforcer la cybersécurité du marché européen. Le portail dont le code est porté dans ce dépôt vise à faciliter le parcours des futurs entités (privées et publiques) réglementées par ce cadre de loi.
Récupération du code depuis github:
git clone https://github.com/betagouv/anssi-nis2.git
cd anssi-nis2Créer un réseau virtuel docker pour les containers du projet :
docker network create nis2Exécuter la construction automatique docker:
docker compose upDémarre et initialise la base de donnée si nécessaire, puis lance le serveur d'API avec le site front en static
Serveur Web + API:
docker compose restart apiServeur DB (PostgreSQL):
docker compose restart dbConstruction du front web et de l'API:
npm run buildnpm test+---anssi-nis2-api // Serveur d'API (NestJS)
+---anssi-nis2-ui // SPA frontend (Vite + React)
+---pgdata // Données container PostgreSQL (ignoré par git)
Erreur récurrente FATAL: no pg_hba.conf entry for host "[local]", user "postgres", database "postgres", no encryption dans les logs du container anssi-nis2-db
Il s'agit d'un problème de healthcheck : pg_ready appel en boucle d'une manière non reconnue dans le fichier
host pg_hba.conf de PostgreSQL.
Il suffit de lancer une seule fois ces commandes dans le terminal du container:
echo >> /var/lib/postgresql/data/pg_hba.conf
echo local postgres postgres trust >> /var/lib/postgresql/data/pg_hba.confCeci accepte l'hôte local de pg_ready utilisé pour le Healthcheck