Aller au contenu

Guide d'installation Linux pour digna Release 2026.11

Release : 2026.11

Dernière mise à jour : 7 novembre 2026


Table des matières

  1. Introduction
  2. Exigences système
  3. Préparation avant l'installation
  4. Configuration du serveur PostgreSQL
  5. Configuration du serveur Web
  6. Installation initiale
  7. Configuration du backend
  8. Configuration du tableau de bord
  9. Exécution de digna en tant que service systemd
  10. Mise à niveau vers une nouvelle version

Introduction

À propos de digna

digna est une plateforme complète pilotée par l'IA conçue pour optimiser la gestion de la qualité des données dans divers environnements de données tels que les entrepôts, les lacs et les lakehouses. Conçue pour être hautement évolutive et adaptable, digna répond aux défis modernes des données grâce à l'automatisation, la surveillance en temps réel et la détection d'anomalies.

digna se compose de deux éléments principaux :

  • digna : le cœur de l'application, chargé du traitement des données et de l'exécution des contrôles de qualité. Il réunit le backend et l'interface en ligne de commande dans un seul exécutable, remplaçant les programmes distincts dignabackend et dignacli des versions précédentes.
  • dignadashboard : Une interface web hébergée sur un serveur web, offrant un moyen convivial d'interagir avec la plateforme digna et de visualiser les métriques de qualité des données.

Nouveautés de la Release 2026.11

Cette version ajoute digna Data Reconciliation, digna Agentic avec le digna MCP Server, et le digna Engine, qui peut profiler les données au sein de digna et contrôler l'intégrité référentielle entre différentes technologies de bases de données. Consultez les notes de version pour tous les détails.

Pour une installation, cette version apporte un nouveau mécanisme de migration du référentiel, une section [duckdb] facultative dans config.toml pour le digna Engine, et un nouveau fichier de licence. La section sur la mise à niveau traite chacun de ces points.

Vous cherchez Windows ou macOS ?

Ce guide couvre Linux. Pour d'autres plateformes, voir le Windows Installation Guide ou le macOS Installation Guide.

Quelle distribution couvre ce guide ?

Les instructions sont rédigées pour les deux familles de serveurs les plus courantes. Lorsque les deux diffèrent, les deux commandes sont fournies :

  • famille Debian — Debian, Ubuntu. Gestionnaire de paquets : apt.
  • famille RHEL — Red Hat Enterprise Linux, Rocky Linux, AlmaLinux, Fedora. Gestionnaire de paquets : dnf.

Toute distribution moderne avec systemd fonctionnera ; seuls les noms de paquets et quelques chemins de configuration changent.


Exigences système

Avant de commencer l'installation, assurez-vous que votre système respecte les exigences minimales suivantes :

Exigence Spécification
Système d'exploitation Ubuntu 22.04 LTS ou ultérieur, Debian 12 ou ultérieur, RHEL 9 / Rocky 9 / AlmaLinux 9 ou ultérieur
Architecture x86_64 (amd64) ou arm64
Système d'init systemd
Mémoire (installation minimale) 16 GB RAM
Espace disque 10 GB d'espace disponible
Base de données PostgreSQL Server 12 ou supérieur
Serveur Web nginx, Apache httpd, ou équivalent

digna Engine

Les connexions de base de données qui utilisent le digna Engine comme emplacement de profilage sont profilées sur l'hôte digna lui-même. Prévoyez pour elles de la mémoire et de l'espace disque supplémentaires, voir la section [duckdb].

Options d'installation de la base de données

Si PostgreSQL est déjà installé : Vous pouvez ajouter une nouvelle base de données pour digna à votre serveur PostgreSQL existant.

Si vous installez PostgreSQL sur la même machine que digna :

Spécifications recommandées

  • Mémoire : 32 GB RAM (au lieu de 16 GB)
  • Espace disque : 50 GB d'espace disponible (au lieu de 10 GB)

Ces spécifications supérieures accommodent à la fois digna et le serveur PostgreSQL fonctionnant simultanément.

Vérifier votre distribution et votre architecture

Plusieurs commandes de ce guide diffèrent entre les familles Debian et RHEL. Pour vérifier laquelle vous utilisez, lancez :

cat /etc/os-release
uname -m
  • ID=ubuntu ou ID=debian — utilisez les commandes apt.
  • ID=rhel, rocky, almalinux ou fedora — utilisez les commandes dnf.
  • x86_64 ou aarch64 — l'architecture du paquet d'installation dont vous avez besoin.

Préparation avant l'installation

Avant d'installer digna, assurez-vous que deux prérequis clés sont en place :

  1. Serveur PostgreSQL – pour stocker les métriques calculées et les données de performance
  2. Serveur Web – pour héberger le Dashboard de digna

Si ces composants ne sont pas déjà configurés, suivez les sections ci-dessous pour les installer et les configurer.

Actualisation de l'index des paquets

Mettez à jour vos listes de paquets avant d'installer quoi que ce soit :

sudo apt update
sudo dnf check-update

Remarque

Tout au long de ce guide, la première commande d'une paire est pour la famille Debian et la seconde pour la famille RHEL. Exécutez uniquement celle qui correspond à votre système.


Configuration du serveur PostgreSQL

Si vous avez déjà PostgreSQL

Si PostgreSQL est déjà installé et en cours d'exécution sur votre machine locale ou si vous utilisez un serveur PostgreSQL géré à distance, vous pouvez passer à la section suivante.

Installation de PostgreSQL

Étape 1 : Installer le paquet serveur

sudo apt install -y postgresql postgresql-contrib
sudo dnf install -y postgresql-server postgresql-contrib

Astuce

Les paquets des distributions peuvent être en retard par rapport à la version actuelle de PostgreSQL. Si vous avez besoin d'une version plus récente spécifique, utilisez le dépôt officiel PostgreSQL apt ou yum.

Étape 2 : Initialiser le cluster de bases

Sur la famille Debian, le paquet crée et démarre automatiquement un cluster — passez à l'étape suivante.

Sur la famille RHEL, le cluster doit être créé explicitement :

sudo postgresql-setup --initdb

Étape 3 : Démarrer et activer le service

sudo systemctl enable --now postgresql

Cela démarre PostgreSQL immédiatement et le configure pour redémarrer automatiquement au démarrage.

Étape 4 : Vérifier l'installation

psql --version
sudo systemctl status postgresql

Vous devriez voir la version de PostgreSQL et un service active (running).

Étape 5 : Se connecter au serveur

Un paquet PostgreSQL Linux crée un compte système postgres qui possède le cluster. Connectez-vous via ce compte :

sudo -u postgres psql

Remarque — Différence avec Windows

L'installateur Windows vous invite à définir un mot de passe pour le superutilisateur postgres pendant l'installation. Les paquets Linux ne le font pas. À la place, les connexions locales sont authentifiées par peer authentication : l'utilisateur système postgres est autorisé à se connecter en tant qu'utilisateur de base de données postgres sans mot de passe.

C'est pourquoi la commande ci‑dessus utilise sudo -u postgres. Le backend digna se connecte via TCP avec un nom d'utilisateur et un mot de passe, donc vous créerez un utilisateur digna explicite dans Installation initiale.

Étape 6 : Confirmer le port

Le port PostgreSQL par défaut est 5432. Pour confirmer le port sur lequel votre serveur écoute :

sudo -u postgres psql -c "SHOW port;"

Notez la valeur — vous en aurez besoin lors de la configuration du backend digna.

Étape 7 : Autoriser l'authentification par mot de passe pour l'utilisateur digna

digna se connecte à PostgreSQL via TCP en tant que digna_user, ce qui nécessite l'authentification par mot de passe plutôt que par peer authentication. Vérifiez que votre pg_hba.conf le permet.

Localisez le fichier :

sudo -u postgres psql -c "SHOW hba_file;"

Ouvrez-le dans un éditeur et confirmez que les lignes TCP locales utilisent scram-sha-256 (ou md5 sur les serveurs plus anciens) plutôt que ident :

# TYPE  DATABASE  USER  ADDRESS         METHOD
host    all       all   127.0.0.1/32    scram-sha-256
host    all       all   ::1/128         scram-sha-256

Rechargez PostgreSQL après toute modification :

sudo systemctl reload postgresql

Important

Si digna signale FATAL: Ident authentication failed for user "digna_user", ce paramètre en est la cause.

Étape 8 : Si PostgreSQL fonctionne sur une autre machine

Pour accepter les connexions depuis un hôte différent, définissez listen_addresses dans postgresql.conf et ajoutez une ligne host correspondante pour votre réseau dans pg_hba.conf :

listen_addresses = '*'

Ensuite, ouvrez le port dans le pare-feu et redémarrez le service :

sudo ufw allow 5432/tcp
sudo firewall-cmd --permanent --add-port=5432/tcp && sudo firewall-cmd --reload
sudo systemctl restart postgresql


Configuration du serveur Web

digna nécessite un serveur web pour héberger le tableau de bord. Choisissez l'une des options suivantes :

Vous n'avez besoin d'installer et de configurer qu'un seul de ces serveurs.

Les deux sections configurent deux éléments dont dépend le tableau de bord :

  • Un fallback pour application monopage (single-page-application), afin qu'un rafraîchissement d'URL du tableau de bord ne retourne pas un 404
  • Un type MIME .md, pour que les fichiers Markdown soient servis correctement

Configuration de nginx

Vue d'ensemble

nginx est un serveur web léger et performant, bien adapté pour servir le tableau de bord statique de digna.

Installation

sudo apt install -y nginx
sudo dnf install -y nginx

Démarrage de nginx

sudo systemctl enable --now nginx

Vérifier l'installation

  1. Ouvrez votre navigateur
  2. Allez à http://localhost
  3. Vous devriez voir la page d'accueil nginx

Ouverture du pare-feu

Si le serveur est atteint depuis d'autres machines, autorisez le trafic HTTP :

sudo ufw allow 'Nginx Full'
sudo firewall-cmd --permanent --add-service=http && sudo firewall-cmd --reload

Configuration d'un site pour le tableau de bord

nginx inclut tous les fichiers de son répertoire conf.d pour les deux familles de distribution. Créez un fichier de configuration dédié pour digna à cet emplacement :

sudo nano /etc/nginx/conf.d/digna.conf

Collez ce qui suit, en remplaçant /opt/digna/dashboard par le chemin réel vers votre dossier dashboard extrait :

server {
    listen       80 default_server;
    listen       [::]:80 default_server;
    server_name  _;

    root   /opt/digna/dashboard;
    index  index.html;

    # Servir les fichiers Markdown avec le type MIME correct.
    types {
        text/markdown  md;
    }

    # Fallback pour application monopage : les chemins inconnus retournent index.html
    # au lieu d'un 404, afin que les routes du tableau de bord survivent à un rafraîchissement du navigateur.
    location / {
        try_files $uri $uri/ /index.html;
    }
}

Important

Sans la directive try_files, le rechargement de toute page du tableau de bord autre que l'URL racine renverra un 404. C'est l'équivalent nginx du module URL Rewrite requis par IIS sous Windows.

Désactiver le site par défaut

Un seul bloc server peut être default_server pour un port. Sur la famille Debian, supprimez le site par défaut packagé pour qu'il ne rentre pas en conflit :

sudo rm /etc/nginx/sites-enabled/default

Sur la famille RHEL, commentez ou supprimez le bloc server { ... } à l'intérieur de /etc/nginx/nginx.conf.

Appliquer la configuration

Testez la configuration pour les erreurs de syntaxe, puis rechargez nginx :

sudo nginx -t
sudo systemctl reload nginx

Configuration d'Apache httpd

Vue d'ensemble

Apache httpd est disponible dans les dépôts par défaut de toutes les distributions prises en charge. Le paquet s'appelle apache2 dans la famille Debian et httpd dans la famille RHEL.

Installation

sudo apt install -y apache2
sudo dnf install -y httpd

Démarrage d'Apache

sudo systemctl enable --now apache2
sudo systemctl enable --now httpd

Vérifier l'installation

  1. Ouvrez votre navigateur
  2. Allez à http://localhost
  3. Vous devriez voir la page par défaut Apache de la distribution

Requis : activer mod_rewrite

Le tableau de bord nécessite la réécriture d'URL.

Sur la famille Debian, activez le module et redémarrez :

sudo a2enmod rewrite
sudo systemctl restart apache2

Sur la famille RHEL, mod_rewrite est chargé par défaut. Confirmez-le :

httpd -M | grep rewrite

Requis : autoriser les overrides .htaccess

Ouvrez le fichier de configuration pour votre document root :

sudo nano /etc/apache2/apache2.conf
sudo nano /etc/httpd/conf/httpd.conf

Localisez le bloc <Directory> couvrant votre document root (/var/www/html sur les deux familles) et remplacez :

AllowOverride None

par :

AllowOverride All

Requis : type MIME pour les fichiers Markdown

Dans le même fichier, ajoutez la ligne suivante afin que les fichiers Markdown soient servis correctement :

AddType text/markdown .md

Important

Sans ce paramètre, les fichiers .md peuvent ne pas être servis correctement.

Appliquer la configuration

Vérifiez la configuration pour les erreurs de syntaxe, puis redémarrez Apache :

sudo apachectl configtest
sudo systemctl restart apache2
sudo apachectl configtest
sudo systemctl restart httpd


Installation initiale

Étape 1 : Configurer le repository digna

Le repository digna stocke toutes les métriques calculées par digna. Il sert de base de données centrale pour les données analytiques et de performance.

Créer le schéma du repository et l'utilisateur

Ouvrez votre client PostgreSQL (psql, pgAdmin ou similaire) et exécutez les commandes SQL suivantes :

CREATE SCHEMA <digna_repo_schema>;

CREATE USER <digna_repo_user> WITH PASSWORD '<digna_repo_password>';

GRANT ALL PRIVILEGES ON SCHEMA <digna_repo_schema> TO <digna_repo_user>;

Remplacez les paramètres suivants :

  • <digna_repo_schema> — le nom de schéma souhaité (par ex. dignarepo)
  • <digna_repo_user> — le nom d'utilisateur souhaité (par ex. digna_user)
  • <digna_repo_password> — un mot de passe sécurisé pour cet utilisateur

Exemple :

CREATE SCHEMA dignarepo;

CREATE USER digna_user WITH PASSWORD 'YourSecurePassword123!';

GRANT ALL PRIVILEGES ON SCHEMA dignarepo TO digna_user;

Pour exécuter ces commandes depuis le shell en une seule étape :

sudo -u postgres psql

Puis collez les instructions à l'invite postgres=# et tapez \q pour quitter.

Bonne pratique

Utilisez des mots de passe forts et complexes pour les utilisateurs de base de données. Évitez des identifiants facilement devinables.


Étape 2 : Extraire le paquet d'installation digna

  1. Localisez le fichier ZIP d'installation de digna qui vous a été fourni
  2. Extrayez-le à l'emplacement d'installation souhaité — par exemple /opt/digna
  3. Après extraction, vous devriez voir les éléments suivants :
  4. dashboard/ — interface du tableau de bord Web
  5. digna — exécutable principal (backend + CLI combinés)

Les fichiers de configuration et de licence ne font pas partie du paquet

Ni config.toml ni dashboard/dashboard_config.toml ne sont livrés avec l'installation — vous créez les deux vous-même, dans Configuration du backend et Configuration du tableau de bord. license.toml n'est pas livré non plus ; digna le fournit séparément, comme le décrit l'étape 3.

Pour extraire depuis le shell :

sudo mkdir -p /opt/digna
sudo unzip digna-2026.11-linux-x86_64.zip -d /opt/digna

Remarque

Si unzip n'est pas installé, ajoutez-le avec sudo apt install -y unzip ou sudo dnf install -y unzip.

Rendre l'exécutable exécutable

Selon la manière dont l'archive a été transférée, le bit exécutable peut ne pas avoir été conservé. Réglez-le explicitement :

cd /opt/digna
sudo chmod +x digna

Créer un compte de service

Il est recommandé d'exécuter le backend sous un utilisateur dédié sans privilèges pour les déploiements en production :

sudo useradd --system --no-create-home --shell /usr/sbin/nologin digna
sudo chown -R digna:digna /opt/digna

Remarque

Sur la famille RHEL, le chemin de shell équivalent est /sbin/nologin.

Étape 3 : Installer le fichier de licence

Important

Le fichier de licence n'est pas inclus dans le paquet d'installation et vous sera fourni séparément par digna.

  1. Localisez le fichier license.toml qui vous a été fourni
  2. Copiez-le dans le répertoire racine d'installation de digna (là où se trouvent config.toml et l'exécutable digna)

Pourquoi c'est important : Le fichier de licence contient vos informations client, la date d'expiration de la licence et la signature numérique. Ne modifiez pas ce fichier — toute modification l'invalidera.

Arborescence après la configuration :

/opt/digna/
├── config.toml         (fichier de configuration)
├── license.toml        (VOTRE FICHIER DE LICENCE - copiez-le ici)
├── digna               (exécutable principal)
├── bin/                (scripts de gestion du service)
└── dashboard/          (interface web)
    └── (fichiers du dashboard)

Configuration du backend

Étape 1 : Créer et éditer le fichier de configuration

Le fichier config_template.toml est fourni dans votre répertoire d'installation digna. Vous devez simplement le renommer en config.toml.

cd /opt/digna
sudo mv config_template.toml config.toml

Emplacement : /opt/digna/config.toml

Ouvrez config.toml dans un éditeur de texte et configurez chaque section ci‑dessous.

Section [app]

Cette section configure le partage de ressources entre origines (CORS) entre le tableau de bord et le backend :

[app]
DIGNA_APP_CORS_ALLOW_ORIGINS = ["http://localhost:5173"]
DIGNA_APP_CORS_ALLOW_CREDENTIALS = true
Paramètre Valeur Notes
DIGNA_APP_CORS_ALLOW_ORIGINS URL du tableau de bord Les URL depuis lesquelles le tableau de bord est servi. Les requêtes du navigateur provenant de toute autre origine sont rejetées
DIGNA_APP_CORS_ALLOW_CREDENTIALS true Requis, pour que le navigateur envoie le cookie de session avec chaque requête

Remarque

Si vous servez le tableau de bord depuis nginx ou Apache sur le port HTTP par défaut, l'origine à autoriser est http://localhost — ou l'URL publique du serveur lorsque le tableau de bord est atteint depuis d'autres machines.

La section [app] est facultative

À partir de la Release 2026.11, les deux clés, et toute la section [app], peuvent être omises. C'est la configuration adaptée lorsqu'un reverse proxy sert le tableau de bord et le backend sous une même origine : le navigateur n'effectue alors aucune requête cross-origin, et aucune n'est autorisée par défaut.

Section [repo]

Cette section configure la connexion à la base de données PostgreSQL :

[repo]
DIGNA_REPO_HOST = "localhost"
DIGNA_REPO_PORT = 5432
DIGNA_REPO_DB = "postgres"
DIGNA_REPO_SCHEMA = "dignarepo"
DIGNA_REPO_USER = "digna_user"
DIGNA_REPO_PASSWORD = "YourSecurePassword123!"
DIGNA_REPO_SSLMODE = "prefer"
DIGNA_REPO_NUM_CONNS = 16
Paramètre Valeur Notes
DIGNA_REPO_HOST localhost ou IP Nom d'hôte/IP du serveur PostgreSQL
DIGNA_REPO_PORT 5432 (par défaut) Port PostgreSQL
DIGNA_REPO_DB postgres Nom de la base de données
DIGNA_REPO_SCHEMA dignarepo Schéma créé précédemment
DIGNA_REPO_USER digna_user Utilisateur créé lors de la configuration PostgreSQL
DIGNA_REPO_PASSWORD Votre mot de passe Mot de passe défini lors de la création du schéma
DIGNA_REPO_SSLMODE prefer (par défaut) Facultatif. Mode SSL de PostgreSQL : disable, allow, prefer, require, verify-ca ou verify-full
DIGNA_REPO_NUM_CONNS 16 (par défaut) Facultatif. Nombre de connexions que digna maintient ouvertes vers le référentiel

Bonne pratique

config.toml contient un mot de passe de base de données en clair. Restreignez ses permissions afin que seul le compte de service puisse le lire :

sudo chown digna:digna /opt/digna/config.toml
sudo chmod 600 /opt/digna/config.toml

Section [base]

Cette section contient les paramètres de sécurité, des cookies et des inspections :

[base]
DIGNA_FERNET_KEY = "DU4a0yJ-OqvbKCL4hNQn_CsknH-V1vWmHZqBUl-AY44="
DIGNA_COOKIE_DOMAIN = "localhost"
DIGNA_COOKIE_SECURE = false
DIGNA_COOKIE_HTTPONLY = true
DIGNA_TOKEN_EXPIRES_IN = 86400
DIGNA_MAX_WORKERS = 4
DIGNA_FRONTEND_BASEURL = "http://localhost/"
DIGNA_SOURCE_QUERY_TIMEOUT_SEC = 3600
DIGNA_SOURCE_LOGIN_TIMEOUT_SEC = 30
Paramètre Valeur Notes
DIGNA_FERNET_KEY Valeur indiquée ci-dessus Clé du chiffrement utilisé par les versions précédentes. Elle doit être présente ; conservez la valeur indiquée
DIGNA_COOKIE_DOMAIN localhost Hôte sous lequel le tableau de bord est atteint. "" ne définit aucun domaine, ce qui convient derrière un proxy qui sert le tableau de bord et le backend sous une même origine
DIGNA_COOKIE_SECURE false (HTTP) / true (HTTPS) Doit valoir true dès que digna est servi en HTTPS
DIGNA_COOKIE_HTTPONLY true Met le cookie de session hors de portée des scripts
DIGNA_TOKEN_EXPIRES_IN 86400 (24 heures) Durée d'expiration de la session en secondes
DIGNA_MAX_WORKERS Nombre de cœurs CPU - 1 Nombre d'inspections pouvant s'exécuter en même temps
DIGNA_FRONTEND_BASEURL URL du tableau de bord Obligatoire. Utilisée pour les liens des messages de notification ; ce doit donc être une URL que les destinataires peuvent ouvrir
DIGNA_SOURCE_QUERY_TIMEOUT_SEC 3600 (par défaut) Facultatif. Nombre de secondes pendant lesquelles une requête sur une base de données source peut s'exécuter avant d'être interrompue ; 0 désactive le délai
DIGNA_SOURCE_LOGIN_TIMEOUT_SEC 30 (par défaut) Facultatif. Nombre de secondes d'attente d'une connexion à une base de données source ; 0 attend indéfiniment

Astuce

Pour connaître le nombre de cœurs CPU disponibles sur votre serveur, exécutez nproc.

Section [encryption]

Cette section contient la clé utilisée pour chiffrer les valeurs sensibles stockées dans le référentiel. Elle est obligatoire — config check signale la section [encryption] comme FAILED si la clé est absente.

[encryption]
DIGNA_ENCRYPTION_KEY = 'ycELf6IbcO55dYIZHpPv6kQv/bbnUXoIaHLh2bh1kMg='
Paramètre Valeur Notes
DIGNA_ENCRYPTION_KEY Clé encodée en Base64 Chiffre les valeurs sensibles stockées dans le référentiel digna

Protéger config.toml

Cette clé est une valeur fixe, identique dans toutes les installations digna, et c'est elle qui déchiffre les valeurs sensibles de votre référentiel. Limitez l'accès à config.toml au compte qui exécute digna, gardez le fichier hors du gestionnaire de versions et des lecteurs partagés, et excluez-le de toute sauvegarde conservée de manière moins sûre que le référentiel lui-même.

Section [logging]

Cette section configure le comportement de journalisation :

[logging]
DIGNA_LOGGING_MODE = "INFO"
DIGNA_LOGGING_DIR = "logs"
DIGNA_LOGGING_MAX_FILES = 30
Paramètre Valeur Notes
DIGNA_LOGGING_MODE INFO ou DEBUG INFO pour la production, DEBUG pour le dépannage. TRACE, WARN et ERROR sont également acceptés
DIGNA_LOGGING_DIR logs (par défaut) Facultatif. Répertoire des fichiers journaux rotatifs, relatif au répertoire de travail
DIGNA_LOGGING_MAX_FILES 30 (par défaut) Facultatif. Nombre de fichiers journaux archivés à conserver

Section [duckdb] (facultative)

Nouveauté de la Release 2026.11. Cette section définit les ressources du digna Engine, qui profile les données au sein de digna pour les connexions de base de données dont l'emplacement de profilage est digna Engine, et exécute les contrôles d'intégrité référentielle entre des sources de données situées sur des connexions de base de données différentes. Voir Emplacement de profilage.

La section est facultative. Sans elle, les valeurs par défaut ci-dessous s'appliquent.

[duckdb]
DIGNA_DUCKDB_MEMORY_LIMIT_MB = 1024
DIGNA_DUCKDB_TEMP_DIRECTORY = "/opt/digna/tmp"
Paramètre Valeur Notes
DIGNA_DUCKDB_MEMORY_LIMIT_MB 1024 (par défaut) Mémoire, en MB, qu'une exécution du digna Engine peut utiliser. Jusqu'à DIGNA_MAX_WORKERS exécutions peuvent être actives en même temps
DIGNA_DUCKDB_TEMP_DIRECTORY Par défaut : le répertoire temporaire du système ($TMPDIR, ou /tmp s'il n'est pas défini) Répertoire des fichiers temporaires lorsque les données ne tiennent pas en mémoire

Dimensionner le digna Engine

Prévoyez jusqu'à DIGNA_MAX_WORKERS × DIGNA_DUCKDB_MEMORY_LIMIT_MB de mémoire sur l'hôte digna, en plus de ce que digna utilise lui-même, ainsi que suffisamment d'espace disque libre dans le répertoire temporaire pour contenir le jour inspecté le plus volumineux des sources de données qui utilisent le digna Engine. Faites pointer DIGNA_DUCKDB_TEMP_DIRECTORY vers un disque disposant de cet espace, accessible en écriture au compte qui exécute digna :

sudo mkdir -p /opt/digna/tmp
sudo chown digna:digna /opt/digna/tmp

Cette section n'est nécessaire que si au moins une connexion de base de données utilise le digna Engine, ou si un contrôle d'intégrité référentielle compare des sources de données situées sur des connexions différentes.


Étape 2 : Vérifier la configuration

Avant d'initialiser le référentiel, vérifiez que config.toml est complet et correctement formé. Depuis votre répertoire d'installation digna, exécutez :

./digna config check

Chaque section est validée séparément, de sorte qu'une seule erreur ne masque pas l'état des autres :

Configuration validation report (source: config.toml):
 - App config: OK
 - Repository config: OK
 - Base config: OK
 - Logging config: OK
 - Encryption config: OK
 - OIDC config(s): OK
 - Template overrides: OK
 - Unknown keys: OK

Overall: OK

Corrigez tout ce qui est signalé comme FAILED et relancez la commande avant de continuer. Un WARNING sous Unknown keys liste les clés de config.toml que digna ne lit pas ; elles n'ont aucun effet, supprimez-les donc ou corrigez leur orthographe. La liste complète des options figure dans la référence CLI.

Étape 3 : Initialiser le repository

  1. Ouvrez un terminal
  2. Placez-vous dans votre répertoire d'installation digna (là où se trouvent config.toml et l'exécutable digna)
  3. Lancez le test de connexion :
cd /opt/digna
./digna repo check

Sur un nouveau schéma, la commande se connecte puis signale qu'aucun référentiel n'est encore installé :

Error: No repo installed. Use the 'digna repo upgrade' command to install it.

À ce stade, c'est le résultat attendu : il confirme que digna atteint PostgreSQL et le schéma. Une erreur de connexion ou d'authentification indique au contraire un problème dans la section [repo] ou dans la configuration de PostgreSQL.

Remarque

Sur Linux, le répertoire courant n'est pas dans votre PATH, donc l'exécutable est invoqué en tant que ./digna plutôt que digna. Pour utiliser la forme plus courte partout, ajoutez un lien symbolique :

sudo ln -s /opt/digna/digna /usr/local/bin/digna

Étape 4 : Installer le schéma du repository

Dans le même répertoire, exécutez :

./digna repo upgrade

Cette commande installe les tables nécessaires dans le schéma du référentiel et se termine par :

✅ Repo schema 'dignarepo' is up to date.

repo upgrade installe et met à niveau

À partir de la Release 2026.11, repo upgrade installe un nouveau référentiel et met à niveau un référentiel existant. repo install fonctionne toujours comme autre nom de la même commande.

Étape 5 : Créer un utilisateur administrateur

  1. Ouvrez un nouveau terminal
  2. Placez-vous dans votre répertoire d'installation digna
  3. Exécutez la commande suivante pour créer un utilisateur admin :
./digna user add <email> <password> "<display_name>" --admin

Exemple :

./digna user add admin@example.com 'AdminPassword123!' "Admin User" --admin

Ceci crée un utilisateur avec l'adresse e-mail admin@example.com et des privilèges administratifs complets.

Astuce

Entourez le mot de passe de guillemets simples. bash et zsh traitent des caractères tels que !, $ et * de façon spéciale, et un mot de passe non cité les contenant ne sera pas transmis tel quel.

Bonne pratique

Utilisez un mot de passe fort mélangeant majuscules, minuscules, chiffres et caractères spéciaux.


Étape 6 : Démarrer le serveur digna

Dans le répertoire d'installation digna, démarrez le serveur avec :

./digna serve --address <host> --port <port>

Paramètres : - --address — Nom d'hôte/IP du serveur (par défaut 127.0.0.1) - --port — Port du serveur (par défaut 8000)

Une fois le serveur démarré, il affiche l'adresse sur laquelle il écoute :

Server running on http://127.0.0.1:8082

Astuce

Si le tableau de bord est servi depuis une machine différente du backend, ouvrez également le port API dans le pare-feu :

sudo ufw allow 8082/tcp
sudo firewall-cmd --permanent --add-port=8082/tcp && sudo firewall-cmd --reload

Le serveur occupe le terminal

serve s'exécute au premier plan et continue de tourner jusqu'à ce que vous l'arrêtiez avec Ctrl+C. Laissez-le tourner pendant que vous terminez la configuration ; pour le démarrer automatiquement au démarrage, voir Exécuter digna en tant que service systemd.

Configuration du tableau de bord

Étape 1 : Déployer le tableau de bord sur le serveur Web

Le tableau de bord digna lit sa propre configuration dans dashboard/dashboard_config.toml. Ce fichier n'est pas livré avec l'installation — vous le créez dans le répertoire dashboard/, à côté des fichiers du tableau de bord.

Son contenu est décrit sous Authentification unique (SSO), là où le fichier est également nécessaire : il contient les options de connexion proposées par le tableau de bord et, pour les déploiements multi‑instance, la connexion au backend.

Choisissez votre serveur web et suivez les étapes de déploiement correspondantes.

Déploiement sur nginx

Si vous avez suivi la section nginx Setup, le bloc server pointe déjà vers votre dossier dashboard et aucune copie n'est requise.

  1. Confirmez le chemin
  2. Ouvrez /etc/nginx/conf.d/digna.conf
  3. Vérifiez que root pointe vers votre dossier dashboard extrait

  4. Assurez-vous que le dossier est lisible

    sudo chmod -R a+rX /opt/digna/dashboard
    

  5. Rechargez nginx

    sudo nginx -t
    sudo systemctl reload nginx
    

  6. Tester l'installation

  7. Ouvrez votre navigateur
  8. Allez à http://localhost (ou votre URL configurée)
  9. Vous devriez voir la page de connexion du tableau de bord digna

Déploiement sur Apache httpd

  1. Copiez le tableau de bord dans le document root

    sudo cp -R /opt/digna/dashboard /var/www/html/digna
    

  2. Ajouter les règles de réécriture

Créez un fichier .htaccess dans le dossier déployé afin que les routes du tableau de bord survivent à un rafraîchissement du navigateur :

sudo nano /var/www/html/digna/.htaccess

Collez ce qui suit :

RewriteEngine On
RewriteBase /digna/

# Servir les fichiers et répertoires existants tels quels.
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

# Tout le reste retombe sur le point d'entrée de l'application monopage.
RewriteRule ^ index.html [L]
  1. Redémarrer Apache

    sudo systemctl restart apache2
    
    sudo systemctl restart httpd
    

  2. Accéder au tableau de bord

  3. Ouvrez votre navigateur
  4. Allez à http://localhost/digna
  5. Vous devriez voir la page de connexion du tableau de bord digna

Étape 2 : SELinux (famille RHEL uniquement)

Sur RHEL, Rocky, AlmaLinux et Fedora, SELinux est en mode enforcing par défaut et bloquera le serveur web qui tente de lire des fichiers en dehors de ses emplacements attendus. Vérifiez s'il est actif :

getenforce

Si le résultat est Enforcing et que vous servez le tableau de bord depuis /opt/digna/dashboard, étiquetez le répertoire pour que le serveur web puisse le lire :

sudo semanage fcontext -a -t httpd_sys_content_t "/opt/digna/dashboard(/.*)?"
sudo restorecon -Rv /opt/digna/dashboard

Remarque

Si semanage est introuvable, installez-le avec sudo dnf install -y policycoreutils-python-utils.

Important

Un tableau de bord qui renvoie 403 Forbidden sur un serveur RHEL fraîchement configuré est presque toujours dû à un problème d'étiquetage SELinux plutôt qu'à un problème de permissions de fichiers. Confirmez avec sudo ausearch -m avc -ts recent.


Exécution de digna en tant que service systemd

Pourquoi exécuter digna en tant que service ?

Exécuter le backend digna en tant que service systemd garantit qu'il :

  • Démarre automatiquement au démarrage de la machine
  • S'exécute en arrière-plan sans terminal ouvert
  • Redémarre automatiquement en cas de crash
  • Peut être géré via systemctl, le gestionnaire de services standard de Linux

Fichiers de gestion du service

Tous les fichiers nécessaires se trouvent dans le répertoire d'installation digna sous : bin/

Les scripts shell suivants sont disponibles :

  • install_service.sh — Enregistre digna auprès de systemd
  • uninstall_service.sh — Désenregistre le service
  • start_service.sh — Démarre le service enregistré
  • stop_service.sh — Arrête le service en cours d'exécution

Privilèges root requis

Tous les scripts doivent être exécutés avec sudo, car l'enregistrement d'un service qui démarre au démarrage écrit un fichier d'unité dans /etc/systemd/system.

Rendre les scripts exécutables

L'extraction peut ne pas préserver le bit exécutable. Avant la première utilisation :

cd /opt/digna/bin
sudo chmod +x *.sh

Installer le service

  1. Ouvrez un terminal

  2. Placez-vous dans le dossier bin

    cd /opt/digna/bin
    

  3. Exécutez le script d'installation

    sudo ./install_service.sh
    

Le serveur digna est maintenant enregistré auprès de systemd avec le démarrage automatique activé. Le service ne démarre pas immédiatement — voir la section suivante pour le démarrer.

Démarrer et arrêter le service

Pour démarrer le service

  1. Ouvrez un terminal
  2. Placez-vous dans /opt/digna/bin
  3. Exécutez :
    sudo ./start_service.sh
    

Pour arrêter le service

  1. Ouvrez un terminal
  2. Placez-vous dans /opt/digna/bin
  3. Exécutez :
    sudo ./stop_service.sh
    

Astuce

Arrêtez toujours le service avant de mettre à jour les fichiers de l'application.

Gérer le service avec systemctl

Une fois enregistré, le service peut également être contrôlé avec les commandes systemd standard depuis n'importe quel répertoire :

sudo systemctl start digna
sudo systemctl stop digna
sudo systemctl restart digna
sudo systemctl status digna

Vérifier le service

Pour confirmer que le service est enregistré et en cours d'exécution :

systemctl is-enabled digna
systemctl is-active digna

enabled signifie que le service démarre au démarrage ; active signifie qu'il est en cours d'exécution maintenant.

Voir les journaux du service

systemd capture tout ce que le backend écrit sur la console. Pour le lire :

sudo journalctl -u digna -n 100

Pour suivre le journal en direct pendant que vous reproduisez un problème :

sudo journalctl -u digna -f

Astuce

C'est le moyen le plus rapide pour diagnostiquer un service qui démarre puis s'arrête immédiatement. Une défaillance de connexion au repository ou un fichier license.toml manquant y est signalé.

Déplacer le service vers un nouveau répertoire

Le fichier d'unité stocke le chemin absolu vers l'exécutable, donc déplacer l'installation nécessite de ré-enregistrer le service :

  1. Désinstaller le service actuel

    cd /old/path/digna/bin
    sudo ./uninstall_service.sh
    

  2. Déplacer les fichiers de l'application

    sudo mv /old/path/digna /new/path/digna
    

  3. Réinstaller le service

    cd /new/path/digna/bin
    sudo ./install_service.sh
    

  4. Démarrer le service

    sudo ./start_service.sh
    

Désinstaller le service

  1. Arrêter le service en cours d'exécution

    cd /opt/digna/bin
    sudo ./stop_service.sh
    

  2. Désinstaller le service

    sudo ./uninstall_service.sh
    

Le serveur digna est maintenant désenregistré de systemd.


Mise à niveau vers une nouvelle version

Cette section décrit la mise à niveau d'une installation de la Release 2026.06 vers la Release 2026.11. Si votre installation est plus ancienne, lisez d'abord Mise à niveau depuis une release antérieure à 2026.06.

Avant de mettre à niveau

La création d'une sauvegarde du référentiel digna est obligatoire

Avant de mettre à niveau digna, sauvegardez votre référentiel (PostgreSQL) pour vous protéger contre la perte de données. Une sauvegarde vous permet de restaurer en cas de problème inattendu pendant la mise à niveau.

Pour créer une sauvegarde depuis le shell :

pg_dump -h localhost -p 5432 -U digna_user -n dignarepo postgres > digna_repo_backup.sql

Demander le fichier de licence de la Release 2026.11

La Release 2026.11 nécessite un nouveau license.toml. Demandez-le à l'équipe digna avant de commencer, et gardez-le à portée de main pour l'étape 7.

Mise à niveau depuis une release antérieure à 2026.06

La Release 2026.06 a apporté trois changements qui s'appliquent toujours lorsque vous mettez à niveau une installation plus ancienne directement vers la 2026.11 :

  • ODBC uniquement. digna atteint chaque technologie source via ODBC. Toute connexion de base de données qui n'utilise pas encore ODBC doit être convertie à ODBC après la mise à niveau ; il n'y a pas de conversion automatique. Installez au préalable les pilotes ODBC sur l'hôte digna, voir Installer le pilote ODBC sur l'hôte digna, et préparez les propriétés de chaque connexion à partir des guides par technologie. Le connecteur Databricks Legacy n'existe plus ; migrez ces connexions vers le connecteur Databricks.
  • Un seul exécutable. dignabackend et dignacli sont remplacés par l'exécutable unique digna, qui réunit le backend et la CLI.
  • config.toml. La section [encryption] est obligatoire, et DIGNA_APP_HOST et DIGNA_APP_PORT ne sont plus lus : le serveur tire son adresse et son port de digna serve. Comparez votre fichier avec Configuration du backend.

Les étapes ci-dessous signalent les points où une installation plus ancienne demande une démarche différente. La mise à niveau du référentiel à l'étape 8 amène directement un référentiel de n'importe quelle release antérieure à la 2026.11.

Processus de mise à niveau

Étape 1 : Arrêter le service digna

Si digna s'exécute en tant que service systemd, arrêtez-le d'abord :

cd /opt/digna/bin
sudo ./stop_service.sh

Si digna s'exécute au premier plan, appuyez sur Ctrl+C dans sa fenêtre de terminal.

Étape 2 : Sauvegarder l'installation actuelle

Dans votre répertoire d'installation digna, renommez l'exécutable et le dossier du tableau de bord de votre installation actuelle, afin que la nouvelle version puisse être déployée à côté :

cd /opt/digna
sudo mv digna digna_old
sudo mv dashboard dashboard_old

Conservez digna_old jusqu'à ce que vous ayez vérifié la mise à niveau, et dashboard_old jusqu'à ce que vous en ayez restauré vos fichiers de configuration (voir l'étape 4). Vous pourrez ensuite supprimer les deux.

Mise à niveau depuis une release antérieure à 2026.06

Renommez les dossiers dignabackend et dignacli au lieu de l'exécutable : sudo mv dignabackend dignabackend_old et sudo mv dignacli dignacli_old. Aucun des deux n'est utilisé par la Release 2026.11.

Étape 3 : Extraire et déployer la nouvelle version

  1. Extrayez le nouveau fichier ZIP d'installation digna
  2. Copiez le nouvel exécutable digna et le dossier dashboard vers votre répertoire d'installation
  3. Restaurez le bit exécutable et la propriété du compte de service :
sudo chmod +x /opt/digna/digna
sudo chown -R digna:digna /opt/digna

Important

Ni config.toml ni dashboard/dashboard_config.toml ne sont jamais inclus dans le ZIP d'installation — l'équipe digna ne livre jamais aucun de ces deux fichiers. Votre configuration existante n'est donc pas touchée par la mise à niveau, et les copies se trouvant dans les dossiers renommés *_old sont les seules dont vous disposez.

Étape 4 : Restaurer vos fichiers de configuration

sudo cp dashboard_old/dashboard_config.toml dashboard/dashboard_config.toml

La Release 2026.11 ne nécessite aucune modification de config.toml : un fichier qui fonctionne avec la Release 2026.06 continue de fonctionner. Deux modifications sont facultatives :

  • Ajoutez une section [duckdb] si des connexions de base de données doivent utiliser le digna Engine et que ses valeurs par défaut ne conviennent pas à votre hôte.
  • Omettez la section [app] si un reverse proxy sert le tableau de bord et le backend sous une même origine.

Paramètres que digna ne lit pas

Des versions antérieures de ce guide présentaient certains paramètres que digna ne lit pas. Ils n'ont aucun effet, et config check les liste sous Unknown keys à l'étape 6. Supprimez-les ou corrigez-les :

  • DIGNA_SCHEDULER_MAX_DELAY, DIGNA_CLEANUP_TIME, digna_COOKIE_PATH, digna_COOKIE_SAME_SITE, digna_APP_CORS_ALLOW_METHODS, digna_APP_CORS_ALLOW_HEADERS et digna_LOGGING_BACKUP_COUNT n'existent pas. Supprimez-les.
  • Les noms des paramètres sont sensibles à la casse. digna lit DIGNA_REPO_HOST, et non digna_REPO_HOST. Écrivez chaque nom en majuscules, comme dans Configuration du backend.

Authentification unique : conservez [[oidc_clients]]

digna lit les fournisseurs d'authentification unique sous forme de liste d'entrées [[oidc_clients]], chacune avec son propre DIGNA_OIDC_KEY. Si vous avez converti vos fournisseurs en sections [oidc_clients.<key>], comme le montrait une version antérieure de ce guide, rétablissez-les. config check signale OIDC config(s) comme FAILED tant que cette forme est en place :

[[oidc_clients]]
DIGNA_OIDC_KEY = 'microsoft'
DIGNA_OIDC_CLIENT_ID = '<client_id>'
DIGNA_OIDC_CLIENT_SECRET = '<client_secret>'
DIGNA_OIDC_REDIRECT_URI = 'http://localhost:3000/oidc/callback'
DIGNA_OIDC_CONFIGURATION_URL = 'https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration'

Répétez l'entrée pour chaque fournisseur, et gardez chaque DIGNA_OIDC_KEY identique au key défini dans dashboard_config.toml. Seules les installations qui utilisent l'authentification unique sont concernées.

Étape 5 : Recharger le serveur Web

Le tableau de bord est un ensemble de fichiers statiques ; votre serveur Web — ainsi que le navigateur — peut donc encore servir la version précédente. Rechargez ou redémarrez le serveur Web qui héberge le dossier dashboard, puis rechargez la page en forçant l'actualisation (Ctrl+F5).

Étape 6 : Vérifier la configuration

Assurez-vous que config.toml est complet avant de toucher au référentiel :

./digna config check

Chaque section doit être signalée OK. Corrigez tout ce qui est signalé comme FAILED, supprimez les clés listées sous Unknown keys, et relancez la commande avant de continuer.

Étape 7 : Remplacer le fichier de licence

Un fichier de licence est normalement repris d'une release à la suivante. La Release 2026.11 fait exception : elle ajoute deux modules sous licence, digna Data Reconciliation et digna Agentic, et une licence émise avant la 2026.11 ne les contient pas. Copiez le license.toml fourni par l'équipe digna pour la Release 2026.11 dans le répertoire d'installation, en remplaçant l'ancien :

sudo cp /path/to/new/license.toml /opt/digna/license.toml

Ne conservez pas la licence précédente

Avec la licence précédente, digna démarre toujours, mais digna Data Reconciliation et le digna MCP Server restent désactivés. Chaque commande qui vérifie la licence — user, inspection, repo — s'interrompt avant de toucher au référentiel lorsque la vérification échoue. Vérifiez la nouvelle licence avant d'aller plus loin :

./digna license check

Étape 8 : Mettre à niveau le schéma du référentiel

Dans votre répertoire d'installation digna, exécutez :

cd /opt/digna
./digna repo upgrade

La Release 2026.11 gère le schéma du référentiel au moyen de migrations versionnées. La première mise à niveau depuis une release antérieure amène le schéma à la dernière version de l'ancien mécanisme, enregistre cet état comme point de départ, puis applique les migrations de la Release 2026.11. Elle se termine par :

✅ Baseline migration recorded as applied.
✅ Repo schema 'dignarepo' is up to date.

Toutes les données existantes sont préservées. Pour connaître l'état du référentiel à tout moment, exécutez ./digna repo check : la commande liste la dernière migration appliquée et celles qui sont encore en attente.

digna ne démarre pas sur un référentiel obsolète

À partir de la Release 2026.11, le serveur refuse de démarrer tant que le référentiel nécessite une mise à niveau, et l'indique, par exemple :

Error: Legacy repo version 3.0.2 installed. Use the 'digna repo upgrade' command to upgrade it.

Exécutez repo upgrade avant de démarrer le serveur ou le service.

Étape 9 : Redémarrer les services

Si vous l'exécutez en tant que service systemd :

cd /opt/digna/bin
sudo ./start_service.sh

Si vous l'exécutez manuellement, redémarrez le serveur :

cd /opt/digna
./digna serve --address <address> --port <port>

Si vous utilisez nginx ou Apache, rechargez le serveur web correspondant :

sudo systemctl reload nginx
sudo systemctl restart apache2

Sur la famille RHEL, réappliquez l'étiquetage SELinux si le répertoire dashboard a été remplacé :

sudo restorecon -Rv /opt/digna/dashboard

Étape 10 : Vérifier la mise à niveau

  1. Vérifiez la release du nouvel exécutable :

    ./digna version
    

    La première ligne doit indiquer Release: 2026.11.

  2. Accédez au tableau de bord digna et vérifiez que l'interface se charge correctement.

  3. Consultez les journaux du serveur pour détecter des erreurs :

    sudo journalctl -u digna -n 100
    
  4. Testez vos connexions de base de données — voir Tester une connexion. Après une mise à niveau depuis une release antérieure à 2026.06, convertissez d'abord à ODBC chaque connexion qui ne l'utilisait pas encore.

Pour commencer avec les nouveaux modules, voir digna Data Reconciliation, Connecter un agent IA pour le digna MCP Server, et Emplacement de profilage pour le digna Engine.