Guida all'installazione Linux per digna Release 2026.06¶
Release: 2026.06
Ultimo aggiornamento: 5 settembre 2026
Indice¶
- Introduzione
- Requisiti di sistema
- Preparazione pre-installazione
- Configurazione del server PostgreSQL
- Configurazione del Web Server
- Installazione iniziale
- Configurazione del backend
- Configurazione della dashboard
- Eseguire digna come servizio systemd
- Aggiornamento a una nuova release
Introduzione¶
Informazioni su digna¶
digna è una piattaforma completa basata su AI progettata per ottimizzare la gestione della qualità dei dati in vari ambienti dati come data warehouse, data lake e lakehouse. Progettata per essere altamente scalabile e adattabile, digna affronta le sfide moderne dei dati tramite automazione, monitoraggio in tempo reale e rilevamento di anomalie.
digna è composta da due componenti principali:
- digna: il cuore dell'applicazione, responsabile dell'elaborazione dei dati e dell'esecuzione dei controlli di qualità. Unisce il backend e l'interfaccia a riga di comando in un unico eseguibile, sostituendo i programmi separati
dignabackendedignaclidelle versioni precedenti. - dignadashboard: un'interfaccia web ospitata su un web server, che fornisce un modo user-friendly per interagire con la piattaforma digna e visualizzare le metriche sulla qualità dei dati.
Novità nella Release 2026.06¶
Questa release integra capacità di osservabilità dei dati direttamente nel codice, permettendo agli sviluppatori di monitorare la qualità dei dati alla fonte. Vedi le note di rilascio per i dettagli completi.
Cerchi Windows o macOS?¶
Questa guida copre Linux. Per altre piattaforme, vedi la Guida all'installazione per Windows o la Guida all'installazione per macOS.
Quale distribuzione copre questa guida?¶
Le istruzioni sono scritte per le due famiglie di server più comuni. Dove differiscono, vengono forniti entrambi i comandi:
- Famiglia Debian — Debian, Ubuntu. Gestore pacchetti:
apt. - Famiglia RHEL — Red Hat Enterprise Linux, Rocky Linux, AlmaLinux, Fedora. Gestore pacchetti:
dnf.
Qualsiasi distribuzione moderna con systemd funzionerà; cambiano solo i nomi dei pacchetti e alcuni percorsi di configurazione.
Requisiti di sistema¶
Prima di iniziare l'installazione, assicurati che il sistema soddisfi i seguenti requisiti minimi:
| Requisito | Specifica |
|---|---|
| Sistema operativo | Ubuntu 22.04 LTS o successivo, Debian 12 o successivo, RHEL 9 / Rocky 9 / AlmaLinux 9 o successivo |
| Architettura | x86_64 (amd64) o arm64 |
| Sistema di init | systemd |
| Memoria (Installazione minima) | 16 GB RAM |
| Spazio su disco | 10 GB di spazio disponibile |
| Database | PostgreSQL Server 12 o superiore |
| Web Server | nginx, Apache httpd o equivalente |
Opzioni di installazione del database¶
Se PostgreSQL è già installato: Puoi aggiungere un nuovo database per digna al tuo server PostgreSQL esistente.
Se installi PostgreSQL sulla stessa macchina di digna:
Specifiche consigliate
- Memoria: 32 GB RAM (invece di 16 GB)
- Spazio su disco: 50 GB di spazio disponibile (invece di 10 GB)
Queste specifiche maggiori sono consigliate per ospitare contemporaneamente digna e il database PostgreSQL.
Verifica della distribuzione e dell'architettura¶
Diversi comandi in questa guida differiscono tra le famiglie Debian e RHEL. Per verificare quale stai usando, esegui:
ID=ubuntuoID=debian— usa i comandiapt.ID=rhel,rocky,almalinuxofedora— usa i comandidnf.x86_64oaarch64— l'architettura del pacchetto di installazione di cui hai bisogno.
Preparazione pre-installazione¶
Prima di installare digna, assicurati che siano presenti due prerequisiti chiave:
- Server PostgreSQL – per memorizzare le metriche calcolate e i dati di performance
- Web Server – per ospitare la digna Dashboard
Se questi componenti non sono già configurati, segui le sezioni sottostanti per installarli e configurarli.
Aggiornamento dell'indice dei pacchetti¶
Aggiorna le liste dei pacchetti prima di installare qualsiasi cosa:
Nota
In tutta questa guida, il primo comando in una coppia è per la famiglia Debian e il secondo per la famiglia RHEL. Esegui solo quello che corrisponde al tuo sistema.
Configurazione del server PostgreSQL¶
Se hai già PostgreSQL¶
Se PostgreSQL è già installato e in esecuzione sulla tua macchina locale o se stai usando un server PostgreSQL gestito remoto, puoi saltare alla sezione successiva.
Installazione di PostgreSQL¶
Passo 1: Installa il pacchetto server¶
Suggerimento
I pacchetti delle distribuzioni possono essere in ritardo rispetto all'ultima release di PostgreSQL. Se hai bisogno di una versione più recente specifica, usa il repository ufficiale PostgreSQL apt o yum.
Passo 2: Inizializza il cluster di database¶
Sulla famiglia Debian, il pacchetto crea e avvia automaticamente un cluster — passa al passo successivo.
Sulla famiglia RHEL, il cluster deve essere creato esplicitamente:
Passo 3: Avvia e abilita il servizio¶
Questo avvia PostgreSQL immediatamente e lo configura per avviarsi automaticamente al boot.
Passo 4: Verifica l'installazione¶
Dovresti vedere la versione di PostgreSQL e un servizio active (running).
Passo 5: Connettiti al server¶
Il pacchetto PostgreSQL per Linux crea un account di sistema postgres che possiede il cluster. Connettiti tramite quell'account:
Nota — qui Linux differisce da Windows
L'installer di Windows ti chiede di impostare una password per l'utente superuser postgres durante l'installazione. I pacchetti Linux no. Le connessioni locali vengono invece autenticate tramite peer authentication: l'utente del sistema operativo postgres è autorizzato a connettersi come utente del database postgres senza password.
Per questo il comando sopra usa sudo -u postgres. Il backend di digna si connette via TCP con username e password, quindi creerai un utente esplicito per digna in Installazione iniziale.
Passo 6: Conferma la porta¶
La porta predefinita di PostgreSQL è 5432. Per confermare su quale porta sta ascoltando il tuo server:
Annota il valore — ti servirà quando configurerai il backend di digna.
Passo 7: Abilita l'autenticazione tramite password per l'utente digna¶
digna si connette a PostgreSQL via TCP come digna_user, il che richiede l'autenticazione tramite password invece della peer authentication. Verifica che il tuo pg_hba.conf lo permetta.
Individua il file:
Aprilo in un editor e conferma che le righe TCP locali usino scram-sha-256 (o md5 su server più vecchi) invece di 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
Ricarica PostgreSQL dopo ogni modifica:
Importante
Se digna riporta FATAL: Ident authentication failed for user "digna_user", questa impostazione è la causa.
Passo 8: Se PostgreSQL è su un'altra macchina¶
Per accettare connessioni da un host diverso, imposta listen_addresses in postgresql.conf e aggiungi una riga host corrispondente per la tua rete in pg_hba.conf:
Poi apri la porta nel firewall e riavvia il servizio:
Configurazione del Web Server¶
digna richiede un web server per ospitare la dashboard. Scegli una delle seguenti opzioni:
- nginx — leggero e raccomandato
- Apache httpd — alternativa ampiamente diffusa
È necessario installare e configurare solo uno di questi server.
Entrambe le sezioni configurano due elementi di cui la dashboard dipende:
- Un fallback per single-page-application, in modo che aggiornando un URL della dashboard non venga restituito un 404
- Un tipo MIME per i file
.md, in modo che i file Markdown siano serviti correttamente
Configurazione di nginx¶
Panoramica¶
nginx è un web server leggero e ad alte prestazioni adatto a servire la dashboard statica di digna.
Installazione¶
Avvio di nginx¶
Verifica dell'installazione¶
- Apri il browser
- Vai su
http://localhost - Dovresti vedere la pagina di benvenuto di nginx
Apertura del firewall¶
Se il server è raggiunto da altre macchine, consenti il traffico HTTP:
Configurazione di un sito per la dashboard¶
nginx carica ogni file nella sua directory conf.d su entrambe le famiglie di distribuzioni. Crea un file di configurazione dedicato per digna lì:
Incolla il seguente contenuto, sostituendo /opt/digna/dashboard con il percorso effettivo alla cartella estratta dashboard:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /opt/digna/dashboard;
index index.html;
# Serve Markdown files with the correct MIME type.
types {
text/markdown md;
}
# Single-page-application fallback: unknown paths return index.html
# instead of a 404, so dashboard routes survive a browser refresh.
location / {
try_files $uri $uri/ /index.html;
}
}
Importante
Senza la direttiva try_files, ricaricare qualsiasi pagina della dashboard diversa dall'URL root restituirà un 404. Questa è l'equivalente nginx del modulo URL Rewrite richiesto da IIS su Windows.
Disabilita il sito di default¶
Solo un blocco server può essere default_server per una porta. Sulla famiglia Debian, rimuovi il sito preconfezionato per evitare conflitti:
Sulla famiglia RHEL, commenta o elimina il blocco server { ... } dentro /etc/nginx/nginx.conf.
Applica la configurazione¶
Testa la configurazione per errori di sintassi, poi ricarica nginx:
Configurazione di Apache httpd¶
Panoramica¶
Apache httpd è disponibile nei repository predefiniti di tutte le distribuzioni supportate. Il pacchetto si chiama apache2 sulla famiglia Debian e httpd sulla famiglia RHEL.
Installazione¶
Avvio di Apache¶
Verifica dell'installazione¶
- Apri il browser
- Vai su
http://localhost - Dovresti vedere la pagina di default di Apache della distribuzione
Obbligatorio: abilitare mod_rewrite¶
La dashboard richiede il rewrite degli URL.
Sulla famiglia Debian, abilita il modulo e riavvia:
Sulla famiglia RHEL, mod_rewrite è caricato di default. Confermalo:
Obbligatorio: consentire override con .htaccess¶
Apri il file di configurazione per la tua document root:
Individua il blocco <Directory> che copre la tua document root (/var/www/html in entrambe le famiglie) e cambia:
in:
Obbligatorio: tipo MIME per file Markdown¶
Nello stesso file, aggiungi la seguente riga in modo che i file Markdown siano serviti correttamente:
Importante
Senza questa impostazione, i file .md potrebbero non essere serviti correttamente.
Applica la configurazione¶
Controlla la configurazione per errori di sintassi, poi riavvia Apache:
Installazione iniziale¶
Passo 1: Configurare il repository digna¶
Il repository digna memorizza tutte le metriche calcolate da digna. Funziona come database centrale per dati analitici e di performance.
Crea lo schema e l'utente del repository¶
Apri il client PostgreSQL (psql, pgAdmin o simili) ed esegui i seguenti comandi SQL:
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>;
Sostituisci i seguenti segnaposto:
<digna_repo_schema>— Il nome dello schema desiderato (es.,dignarepo)<digna_repo_user>— Il nome utente desiderato (es.,digna_user)<digna_repo_password>— Una password sicura per questo utente
Esempio:
CREATE SCHEMA dignarepo;
CREATE USER digna_user WITH PASSWORD 'YourSecurePassword123!';
GRANT ALL PRIVILEGES ON SCHEMA dignarepo TO digna_user;
Per eseguirli dalla shell in un unico passaggio:
Poi incolla le istruzioni al prompt postgres=# e digita \q per uscire.
Buona pratica
Usa password forti e complesse per gli utenti del database. Evita credenziali facilmente indovinabili.
Passo 2: Estrai il pacchetto di installazione digna¶
- Individua il file ZIP di installazione di digna che ti è stato fornito
- Estrai il contenuto nella posizione di installazione desiderata — ad esempio
/opt/digna - Dopo l'estrazione, dovresti vedere i seguenti elementi:
dashboard/— Interfaccia web della dashboarddigna— Eseguibile principale (backend + CLI combinati)
I file di configurazione e di licenza non sono inclusi nel pacchetto
Né config.toml né dashboard/dashboard_config.toml sono inclusi nell'installazione: li create entrambi voi, in Configurazione del backend e Configurazione della dashboard. Nemmeno license.toml è incluso; digna lo fornisce separatamente, come descritto nel Passo 3.
Per estrarre da shell:
Nota
Se unzip non è installato, aggiungilo con sudo apt install -y unzip o sudo dnf install -y unzip.
Rendi eseguibile l'eseguibile¶
A seconda di come è stato trasferito l'archivio, il bit eseguibile potrebbe non essere preservato. Impostalo esplicitamente:
Crea un account di servizio¶
È consigliabile eseguire il backend come utente non privilegiato dedicato per le distribuzioni di produzione:
sudo useradd --system --no-create-home --shell /usr/sbin/nologin digna
sudo chown -R digna:digna /opt/digna
Nota
Sulla famiglia RHEL il percorso della shell equivalente è /sbin/nologin.
Passo 3: Installa il file di licenza¶
Importante
Il file di licenza non è incluso nel pacchetto di installazione e ti sarà fornito separatamente da digna.
- Individua il file
license.tomlche ti è stato fornito - Copialo nella directory radice di installazione di digna (dove si trovano
config.tomle l'eseguibiledigna)
Perché è importante: Il file di licenza contiene le informazioni cliente, la data di scadenza della licenza e la firma digitale. Non modificare questo file — qualsiasi modifica lo renderà invalido.
Struttura della directory dopo la configurazione:
/opt/digna/
├── config.toml (file di configurazione)
├── license.toml (IL TUO FILE DI LICENZA - copia qui)
├── digna (eseguibile principale)
├── bin/ (script di gestione del servizio)
└── dashboard/ (interfaccia web)
└── (file della dashboard)
Configurazione del backend¶
Passo 1: Crea e modifica il file di configurazione¶
Il file config_template.toml è fornito nella directory di installazione di digna. Devi solo rinominarlo in config.toml.
Posizione: /opt/digna/config.toml
Apri config.toml in un editor di testo e configura ogni sezione descritta di seguito.
Sezione [app]¶
Questa sezione configura le impostazioni dell'applicazione backend digna:
[app]
digna_APP_CORS_ALLOW_ORIGINS = ["http://localhost:5173"]
digna_APP_CORS_ALLOW_CREDENTIALS = true
digna_APP_CORS_ALLOW_METHODS = ["*"]
digna_APP_CORS_ALLOW_HEADERS = ["*"]
| Parametro | Valore | Note |
|---|---|---|
digna_APP_CORS_ALLOW_ORIGINS | URL del frontend | Se la dashboard è su un server differente, includi il suo URL |
digna_APP_CORS_ALLOW_CREDENTIALS | true | Necessario per CORS con credenziali |
digna_APP_CORS_ALLOW_METHODS | ["*"] | Permette tutti i metodi HTTP |
digna_APP_CORS_ALLOW_HEADERS | ["*"] | Permette tutte le intestazioni |
Nota
Se servi la dashboard da nginx o Apache sulla porta HTTP predefinita, l'origine da consentire è http://localhost — o l'URL pubblico del server se la dashboard è raggiunta da altre macchine.
Sezione [repo]¶
Questa sezione configura la connessione al database 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!"
| Parametro | Valore | Note |
|---|---|---|
digna_REPO_HOST | localhost o IP | Hostname/IP del server PostgreSQL |
digna_REPO_PORT | 5432 (predefinito) | Porta PostgreSQL |
digna_REPO_DB | postgres | Nome del database |
digna_REPO_SCHEMA | dignarepo | Schema creato in precedenza |
digna_REPO_USER | digna_user | Utente creato nella configurazione PostgreSQL |
digna_REPO_PASSWORD | La tua password | Password impostata durante la creazione dello schema |
Buona pratica
config.toml contiene la password del database in testo chiaro. Restringi i permessi in modo che solo l'account di servizio possa leggerlo:
Sezione [base]¶
Questa sezione contiene impostazioni di sicurezza e cookie:
[base]
DIGNA_FERNET_KEY = "DU4a0yJ-OqvbKCL4hNQn_CsknH-V1vWmHZqBUl-AY44="
digna_COOKIE_DOMAIN = "localhost"
digna_COOKIE_PATH = "/"
digna_COOKIE_SECURE = false
digna_COOKIE_HTTPONLY = true
digna_COOKIE_SAME_SITE = "lax"
digna_TOKEN_EXPIRES_IN = 86400
digna_MAX_WORKERS = 4
DIGNA_SCHEDULER_MAX_DELAY = 100
DIGNA_CLEANUP_TIME = "12:00"
| Parametro | Valore | Note |
|---|---|---|
DIGNA_FERNET_KEY | Chiave di crittografia | Usata per criptare token e cookie (default fornito) |
digna_COOKIE_DOMAIN | localhost | Deve corrispondere al dominio del frontend |
digna_COOKIE_SECURE | false (locale) / true (produzione) | Usa true per connessioni HTTPS |
digna_COOKIE_HTTPONLY | true | Sempre abilitato per sicurezza |
digna_COOKIE_SAME_SITE | lax | Previene attacchi CSRF |
digna_TOKEN_EXPIRES_IN | 86400 (24 ore) | Timeout della sessione in secondi |
digna_MAX_WORKERS | Numero di core CPU - 1 | Numero di task di ispezione paralleli |
DIGNA_SCHEDULER_MAX_DELAY | 100 | Ritardo massimo, in secondi, che lo scheduler può aggiungere prima di avviare un'attività in scadenza |
DIGNA_CLEANUP_TIME | "12:00" | Ora del giorno (formato 24 ore HH:MM) in cui parte la pulizia quotidiana |
Suggerimento
Per trovare il numero di core CPU disponibili sul server, esegui nproc.
Sezione [encryption]¶
Questa sezione contiene la chiave usata per cifrare i valori sensibili memorizzati nel repository. È obbligatoria: config check segnala la sezione [encryption] come FAILED se la chiave manca.
| Parametro | Valore | Note |
|---|---|---|
DIGNA_ENCRYPTION_KEY | Chiave codificata in Base64 | Cifra i valori sensibili memorizzati nel repository digna |
Proteggere config.toml
Questa chiave è un valore fisso, identico in tutte le installazioni digna, ed è ciò che decifra i valori sensibili del repository. Limitate config.toml all'account che esegue digna, tenetelo fuori dal controllo di versione e dalle unità condivise ed escludetelo da qualsiasi backup conservato in modo meno sicuro del repository stesso.
Sezione [logging]¶
Questa sezione configura il comportamento del logging:
| Parametro | Valore | Note |
|---|---|---|
digna_LOGGING_MODE | INFO o DEBUG | INFO per la produzione, DEBUG per il troubleshooting |
digna_LOGGING_BACKUP_COUNT | 10 | Numero di backup giornalieri dei log da conservare |
Passo 2: Verificare la configurazione¶
Prima di inizializzare il repository, verificate che config.toml sia completo e ben formato. Nella directory di installazione di digna eseguite:
Ogni sezione viene validata singolarmente, così un singolo errore non nasconde lo stato delle altre:
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
Overall: OK
Correggete tutto ciò che viene segnalato come FAILED e rieseguite il comando prima di proseguire. L'elenco completo delle opzioni è nel riferimento CLI.
Passo 3: Inizializza il repository¶
- Apri un terminale
- Vai nella directory di installazione di digna (dove si trovano
config.tomle l'eseguibiledigna) - Esegui il test di connessione:
Dovresti vedere una conferma che la connessione è stabilita (il repository stesso non è ancora stato inizializzato).
Nota
Su Linux, la directory corrente non è sulla PATH, quindi l'eseguibile viene invocato come ./digna invece di digna. Per usare la forma più breve ovunque, aggiungi un link simbolico:
Passo 4: Installa lo schema del repository¶
Nella stessa directory, esegui:
Questo comando installa le tabelle e lo schema necessari nel tuo database PostgreSQL.
Passo 5: Crea un utente admin¶
- Apri una nuova finestra del terminale
- Vai nella directory di installazione digna
- Esegui il seguente comando per creare un utente amministratore:
Esempio:
Questo crea un utente con l'indirizzo e-mail admin@example.com e privilegi amministrativi completi.
Suggerimento
Racchiudi la password tra virgolette singole. bash e zsh trattano caratteri come !, $ e * in modo speciale, e una password non quotata che li contiene non sarà passata così come digitata.
Buona pratica
Usa una password forte con una combinazione di maiuscole, minuscole, numeri e caratteri speciali.
Passo 6: Avvia il server digna¶
Nella directory di installazione digna, avvia il server con:
Parametri: - --address — Hostname/IP del server - --port — Porta del server
Dovresti vedere messaggi di avvio che confermano che il server è in esecuzione:
INFO: Started server process [1234]
INFO: Waiting for application startup.
INFO: Application startup complete
INFO: Uvicorn running on http://localhost:8082
Suggerimento
Se la dashboard è servita da una macchina diversa rispetto al backend, apri anche la porta API nel firewall:
Il server occupa il terminale
serve viene eseguito in primo piano e continua finché non lo fermate con Ctrl+C. Lasciatelo in esecuzione mentre completate la configurazione; per avviarlo automaticamente all'avvio vedi Eseguire digna come servizio systemd.
Configurazione della dashboard¶
Passo 1: Distribuisci la dashboard sul Web Server¶
La dashboard digna legge la propria configurazione da dashboard/dashboard_config.toml. Questo file non è incluso nell'installazione: lo create nella directory dashboard/, insieme ai file della dashboard.
Il suo contenuto è descritto in Single Sign-On, che è anche il punto in cui il file diventa necessario: contiene le opzioni di accesso offerte dalla dashboard e, per i deployment multi-istanza, la connessione al backend.
Scegli il tuo web server e segui i passaggi di deployment corrispondenti.
Distribuzione su nginx¶
Se hai seguito la sezione nginx Setup, il blocco server punta già alla tua cartella dashboard ed è quindi inutile copiare i file.
- Conferma il percorso
- Apri
/etc/nginx/conf.d/digna.conf -
Verifica che
rootpunti alla cartelladashboardestratta -
Assicurati che la cartella sia leggibile
-
Ricarica nginx
-
Testa l'installazione
- Apri il browser
- Vai su
http://localhost(o sull'URL configurato) - Dovresti vedere la pagina di login della dashboard digna
Distribuzione su Apache httpd¶
-
Copia la dashboard nella document root
-
Aggiungi le regole di rewrite
Crea un file .htaccess all'interno della cartella distribuita in modo che le route della dashboard sopravvivano a un refresh del browser:
Incolla quanto segue:
RewriteEngine On
RewriteBase /digna/
# Serve existing files and directories as-is.
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# Everything else falls back to the single-page application entry point.
RewriteRule ^ index.html [L]
-
Riavvia Apache
-
Accedi alla dashboard
- Apri il browser
- Vai su
http://localhost/digna - Dovresti vedere la pagina di login della dashboard digna
Passo 2: SELinux (solo famiglia RHEL)¶
Su RHEL, Rocky, AlmaLinux e Fedora, SELinux è in modalità enforcing di default e bloccherà il web server dal leggere file al di fuori delle posizioni previste. Verifica se è attivo:
Se il risultato è Enforcing e stai servendo la dashboard da /opt/digna/dashboard, etichetta la directory in modo che il web server possa leggerla:
sudo semanage fcontext -a -t httpd_sys_content_t "/opt/digna/dashboard(/.*)?"
sudo restorecon -Rv /opt/digna/dashboard
Nota
Se semanage non è presente, installalo con sudo dnf install -y policycoreutils-python-utils.
Importante
Una dashboard che restituisce 403 Forbidden su un server RHEL appena configurato è quasi sempre un problema di etichettatura SELinux piuttosto che di permessi sui file. Verifica con sudo ausearch -m avc -ts recent.
Eseguire digna come servizio systemd¶
Perché eseguire digna come servizio?¶
Eseguire il backend digna come servizio systemd garantisce che:
- Si avvii automaticamente all'accensione della macchina
- Giri in background senza una finestra di terminale aperta
- Si riavvii automaticamente in caso di crash
- Possa essere gestito tramite
systemctl, il gestore servizi standard di Linux
File di gestione del servizio¶
Tutti i file necessari sono nella directory di installazione digna sotto: bin/
Gli script shell disponibili sono:
install_service.sh— registra digna con systemduninstall_service.sh— deregistra il serviziostart_service.sh— avvia il servizio registratostop_service.sh— ferma il servizio in esecuzione
Privilegi di root richiesti
Tutti gli script devono essere eseguiti con sudo, perché la registrazione di un servizio che parte all'avvio scrive un file di unità in /etc/systemd/system.
Rendi eseguibili gli script¶
L'estrazione potrebbe non preservare il bit eseguibile. Prima del primo utilizzo:
Installazione del servizio¶
-
Apri un terminale
-
Vai nella cartella bin
-
Esegui lo script di installazione
Il server digna è ora registrato in systemd con l'avvio automatico abilitato. Il servizio non parte immediatamente — vedi la sezione successiva per avviarlo.
Avvio e arresto del servizio¶
Per avviare il servizio¶
- Apri un terminale
- Vai in
/opt/digna/bin - Esegui:
Per fermare il servizio¶
- Apri un terminale
- Vai in
/opt/digna/bin - Esegui:
Suggerimento
Ferma sempre il servizio prima di aggiornare i file dell'applicazione.
Gestione del servizio con systemctl¶
Una volta registrato, il servizio può anche essere controllato con i comandi systemd standard da qualsiasi directory:
sudo systemctl start digna
sudo systemctl stop digna
sudo systemctl restart digna
sudo systemctl status digna
Verifica del servizio¶
Per confermare che il servizio è registrato e in esecuzione:
enabled significa che il servizio si avvia al boot; active significa che è in esecuzione adesso.
Visualizzare i log del servizio¶
systemd cattura tutto ciò che il backend scrive sulla console. Per leggerlo:
Per seguire i log in tempo reale mentre riproduci un problema:
Suggerimento
Questo è il modo più veloce per diagnosticare un servizio che si avvia e si arresta immediatamente. Un errore di connessione al repository o la mancanza di license.toml viene segnalata qui.
Spostare il servizio in una nuova directory¶
Il file unit contiene il percorso assoluto all'eseguibile, quindi spostare l'installazione richiede la registrazione del servizio:
-
Disinstalla il servizio corrente
-
Sposta i file dell'applicazione
-
Reinstalla il servizio
-
Avvia il servizio
Disinstallare il servizio¶
-
Ferma il servizio in esecuzione
-
Disinstalla il servizio
Il server digna è ora deregistrato da systemd.
Aggiornamento a una nuova release¶
Prima di aggiornare¶
Verificate prima tutte le connessioni ai database
A partire dalla Release 2026.06, digna raggiunge ogni tecnologia sorgente tramite ODBC. Le versioni precedenti offrivano la scelta tra un driver specifico per tecnologia e ODBC, selezionata con l'interruttore Use ODBC. Il team digna ha deciso di basarsi solo su ODBC, perché un'unica interfaccia standard offre più di un insieme di driver su misura:
- Autenticazione — l'autenticazione fa parte di ODBC, quindi una connessione può usare tutto ciò che il suo driver supporta: password, token e PAT, Kerberos e Active Directory, MFA e single sign-on da browser, identità cloud, certificati client e TLS. I nuovi metodi arrivano con un aggiornamento del driver, senza attendere una release di digna.
- Driver mantenuti dai produttori dei database — il driver del produttore segue le nuove versioni del server e le correzioni di sicurezza, e potete aggiornarlo secondo i vostri tempi, indipendentemente da digna.
- Un solo modo di configurare tutto — ogni tecnologia è un elenco di proprietà chiave/valore, con la stessa interfaccia, la stessa cifratura dei valori sensibili e la stessa diagnostica, invece di un insieme di campi diverso per ogni sorgente.
- Regolazione e portata — le opzioni del driver come timeout, impostazioni TLS, proxy e dimensioni di fetch sono disponibili per ogni sorgente, e qualsiasi tecnologia con un driver ODBC conforme può essere collegata, comprese quelle per cui digna non pubblica una guida dedicata.
In pratica questo significa che l'interruttore Use ODBC e i campi separati host, porta, database, utente e password non esistono più. Ogni connessione che non usa già ODBC deve essere convertita a ODBC: non esiste una conversione automatica, quindi pianificatela prima dell'aggiornamento:
- Esaminate ogni connessione definita nella vostra installazione e annotate quelle che non usano ancora ODBC: ciascuna dovrà essere riconfigurata.
- Installate il driver ODBC corrispondente sull'host digna: le connessioni vengono aperte dal server che esegue il backend digna, non dal browser. Vedi Installare il driver ODBC sull'host digna.
- Tenete pronte le proprietà ODBC per ogni connessione interessata. Le guide per tecnologia riportano, per ogni sorgente, un insieme di proprietà collaudato.
Dopo l'aggiornamento, convertite a ODBC ogni connessione interessata e provatela dalla dashboard: vedi Creare una connessione al database e Testare una connessione.
Connessioni Databricks Legacy
Il connettore Databricks Legacy è stato rimosso in questa release. Migrate quelle connessioni al connettore Databricks.
È OBBLIGATORIO creare un backup del repository digna
Prima di aggiornare digna, esegui il backup del repository (PostgreSQL) per proteggerti dalla perdita di dati. Un backup ti permette di recuperare se l'aggiornamento incontra problemi imprevisti.
Per creare un backup dalla shell:
Processo di aggiornamento¶
Passo 1: Ferma il servizio digna¶
Se digna è in esecuzione come servizio systemd, fermalo prima:
Se digna è in esecuzione in primo piano, premi Ctrl + C nella finestra del terminale in cui è avviato.
Passo 2: Eseguire il backup dell'installazione attuale¶
Nella directory di installazione di digna, rinominate le cartelle dell'installazione attuale in modo che la nuova release possa essere distribuita accanto a esse:
dignabackend e dignacli non sono più utilizzati
A partire dalla Release 2026.06, dignabackend e dignacli sono sostituiti dall'unico eseguibile digna, che unisce backend e CLI. Conservate dignabackend_old e dignacli_old solo finché non avete verificato l'aggiornamento: dopo potete eliminare entrambe le cartelle. Conservate dashboard_old finché non avete ripristinato da esso i vostri file di configurazione (vedi passo 4).
Passo 3: Estrai e distribuisci la nuova versione¶
- Estrai il nuovo file ZIP di installazione digna
- Copia il nuovo eseguibile
dignae la cartelladashboardnella directory di installazione - Ripristina il bit eseguibile e la proprietà dell'account di servizio:
Importante
Né config.toml né dashboard/dashboard_config.toml sono mai inclusi nello ZIP di installazione: il team digna non fornisce mai nessuno dei due file. La vostra configurazione esistente non viene quindi toccata dall'aggiornamento, e le copie nelle cartelle rinominate *_old sono le uniche che avete.
Passo 4: Ripristina i file di configurazione¶
La Release 2026.06 modifica config.toml
Tre impostazioni sono nuove e obbligatorie, due non sono più utilizzate. Un config.toml ereditato da una versione precedente non contiene le nuove impostazioni e digna non si avvierà finché mancano. Aggiungete quanto segue al vostro config.toml esistente:
[base]
DIGNA_SCHEDULER_MAX_DELAY = 100
DIGNA_CLEANUP_TIME = "12:00"
[encryption]
DIGNA_ENCRYPTION_KEY = 'ycELf6IbcO55dYIZHpPv6kQv/bbnUXoIaHLh2bh1kMg='
Aggiungete le due chiavi [base] alla vostra sezione [base] esistente e aggiungete [encryption] come nuova sezione. Poi rimuovete da [app] le due impostazioni non più utilizzate, digna_APP_HOST e digna_APP_PORT: il server prende ora indirizzo e porta da digna serve.
Il significato di ogni impostazione è descritto in Configurazione del backend.
Single sign-on: il formato di [oidc_clients] è cambiato
La release 2026.06 sostituisce l'array di tabelle con una tabella per ogni provider, denominata in base alla chiave del provider. DIGNA_OIDC_KEY non c'è più: la chiave fa ora parte dell'intestazione della sezione.
Prima:
[[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'
Dopo:
[oidc_clients.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'
Ripeti la sezione per ogni provider e mantieni ogni chiave uguale al key definito in dashboard_config.toml. digna config check segnala oidc_clients come FAILED finché resta la vecchia forma. Sono interessate solo le installazioni che usano il single sign-on.
Passo 5: Ricaricare il web server¶
La dashboard è un insieme di file statici, quindi il web server (e il browser) potrebbe ancora servire la versione precedente. Ricaricate o riavviate il web server che ospita la cartella dashboard, quindi ricaricate la pagina con un aggiornamento forzato (Ctrl+F5).
Passo 6: Verificare la configurazione¶
Verificate che il config.toml aggiornato sia completo prima di toccare il repository:
Ogni sezione deve riportare OK. Correggete tutto ciò che viene segnalato come FAILED e rieseguite il comando prima di proseguire.
Passo 7: Sostituire il file di licenza¶
Ogni release ha una licenza separata. Copiate il license.toml che il team digna vi ha fornito per questa release nella directory di installazione, sostituendo quello vecchio:
Non mantenete la licenza precedente
Un license.toml emesso per una release precedente non copre questa, e ogni comando che verifica la licenza (user, inspection, repo) si interrompe prima di toccare il repository quando la verifica non riesce. Verificatela prima di procedere:
Passo 8: Aggiorna lo schema del repository¶
Vai nella directory di installazione digna ed esegui:
Questo aggiorna lo schema PostgreSQL all'ultima versione preservando tutti i dati esistenti.
Passo 9: Riavvia i servizi¶
Se in esecuzione come servizio systemd:
Se eseguito manualmente, riavvia il server:
Se usi nginx o Apache, ricarica il web server pertinente:
Sulla famiglia RHEL, riapplica l'etichettatura SELinux se la directory dashboard è stata sostituita:
Passo 10: Verifica l'aggiornamento¶
- Accedi alla dashboard digna
- Verifica che l'interfaccia si carichi correttamente
- Controlla i log del server per eventuali errori:
- Convertite a ODBC ogni connessione che non lo usava ancora, poi testate tutte le connessioni: vedi Testare una connessione