Istanze remote e headless
Una IllusionDB locale può lavorare direttamente su un’altra istanza, di solito il tuo server online. L’interfaccia proviene sempre dall’installazione locale, ma ogni modifica ai dati arriva subito sul server. Il server non ha quindi più bisogno di una propria interfaccia web: la sua interfaccia di amministrazione può essere disattivata, lasciando in funzione solo l’API REST come servizio headless.
Configurare una connessione
- Sul server: in Impostazioni → Il mio account crea un token API per un account amministratore e copialo.
- In locale: Impostazioni → Istanze remote → Nuova connessione. Inserisci un nome, l’indirizzo (ad es.
https://db.example.com) e il token. Il token viene salvato cifrato e non viene più mostrato. - Nella colonna Stato IllusionDB verifica subito se il server è raggiungibile, se il token è valido e appartiene a un amministratore e se entrambi i lati hanno la stessa versione.
Solo un amministratore può creare e usare connessioni remote.
Passare da un’istanza all’altra
Il selettore si trova in cima alla barra laterale: Locale o una delle tue connessioni. Quando una connessione è attiva, il selettore diventa giallo con l’etichetta LIVE e sopra ogni pagina compare un avviso: ogni modifica ha effetto immediato sul server. Diventa rosso se il server non è raggiungibile o ha un’altra versione; in tal caso aggiorna entrambi i lati alla stessa versione.
In modalità live tutto proviene dal server: origini dati, tabelle, viste, file, script, utenti, gruppi e permessi. Restano in locale solo il tuo login, il tuo account (password, i tuoi token API) e la gestione delle connessioni remote. Sul server agisci con i permessi dell’account a cui appartiene il token.
Disattivare l’interfaccia di amministrazione (headless)
In Impostazioni → Istanze remote → Interfaccia di amministrazione puoi disattivare l’interfaccia web dell’istanza su cui stai lavorando; in modalità live, quella del server. Da quel momento:
- nessuna interfaccia web, nessun login, nessuna procedura guidata: non esiste più una pagina di login su cui provare password;
- le sessioni del browser in corso terminano subito;
- l’API REST con token API, gli endpoint degli script, le tabelle a lettura pubblica e
/healthzcontinuano a funzionare come prima.
La disattivazione è possibile solo se sull’istanza esiste un token API di un account amministratore (o è impostato un MASTER_TOKEN), altrimenti nessuno potrebbe più accedervi. Puoi riattivarla in qualsiasi momento dal locale tramite la connessione: scegli il server nel selettore, poi Impostazioni → Istanze remote → Attiva interfaccia di amministrazione.
Vie d’emergenza e variabili d’ambiente
| Variabile / comando | Effetto |
|---|---|
HEADLESS=true |
Disattiva l’interfaccia di amministrazione in modo fisso, indipendentemente dall’impostazione. Non modificabile dall’interfaccia. |
MASTER_TOKEN=<almeno 32 caratteri> |
Token amministratore aggiuntivo solo dall’ambiente, senza voce nel database. La via di ritorno se tutti i token API sono spariti: impostalo, riavvia, collegati dal locale, riattiva l’interfaccia. Generalo ad es. con openssl rand -base64 32. |
illusiondb -enable-admin |
Riattiva l’interfaccia direttamente sul server e termina; poi riavvia IllusionDB normalmente. Nel container Docker: docker compose exec illusiondb /app/illusiondb -enable-admin, poi riavvia il container. |