Reference

Impostazioni delle immagini

Entrambe le immagini si configurano tramite variabili d'ambiente. I nomi dell'API usano un doppio underscore tra i livelli, per esempio Smtp__Host. Un'impostazione omessa mantiene il suo valore predefinito. Gli starter kit di Hosting con Docker, Hosting su Kubernetes e Hosting su AKS impostano già tutto ciò che serve a una normale installazione; questa pagina serve per cambiarne una, o per una configurazione tutta tua (Eseguire le immagini).

API: database

ImpostazioneCosa fa
ConnectionStrings__DefaultConnectionIl database in cui vivono i dati del workspace predefinito, per esempio Host=postgres;Database=omnicore-db;Username=archestack;Password=.... Obbligatoria.
ConnectionStrings__CoreI metadati del workspace predefinito: entità, pagine, script. Database omnicore-core. Obbligatoria.
ConnectionStrings__IdentityUtenti, workspace e chiavi, condivisi da tutti i workspace. Database omnicore-identity. Obbligatoria.
ConnectionStrings__KeycloakSolo quando si trasferiscono utenti da Keycloak. Altrimenti lasciala vuota.
ConnectionStrings__ClusterCome più istanze dell'API si comunicano le modifiche. Per impostazione predefinita è il database identity; impostala su PostgreSQL stesso quando in mezzo c'è un connection pooler come PgBouncer.
Database__CreateMissingtrue crea il database dei dati quando manca; gli altri due vengono creati in ogni caso. Predefinito false; i kit impostano true.

L'utente in queste stringhe deve avere il diritto di creare database: ogni nuovo workspace ne riceve due tutti suoi, con nomi derivati dai nomi base qui sopra.

API: indirizzi

ImpostazioneCosa fa
ASPNETCORE_URLSDove l'API è in ascolto dentro il container: http://+:8080.
ASPNETCORE_ENVIRONMENTSempre Production. Qualsiasi altro valore mostra i dettagli degli errori a chiunque.
Http__PathBaseIl percorso sotto cui è servita l'API, per esempio /archestack. Vuoto alla radice.
Identity__AppBaseUrlL'indirizzo del builder, per esempio https://apps.example.com/archestack. I link di invito e di reimpostazione della password puntano qui.
ForwardedHeaders__TrustedProxiesGli indirizzi dei proxy davanti, di cui si accetta l'X-Forwarded-For. Il valore predefinito copre le reti private; senza quello giusto, ogni visitatore sembra il proxy e condivide un unico rate limit.
Tenancy__HostSuffixServe ogni workspace su un hostname tutto suo, <label>.<suffix>, e permette ai workspace di aggiungere domini propri. Vuoto per impostazione predefinita.

API: accesso

ImpostazioneCosa fa
Identity__ProviderBuiltin: Archestack fa accedere le persone da solo. Predefinito.
Identity__InitialAdminEmail, Identity__InitialAdminPasswordIl primo admin, creato al primo avvio quando non c'è ancora nessun utente. Usate una volta sola: dopo cambia la password in Archestack. Omettile entrambe per creare invece l'admin nel builder.
Identity__AllowCompanySignuptrue permette a chiunque di creare un'azienda propria su /register. Predefinito false. Gli admin di un'azienda possono eseguire script sul server, quindi lasciala disattivata a meno che tu non gestisca un servizio pubblico.
Identity__AccessTokenMinutesQuanto dura un token di accesso prima di essere rinnovato. Predefinito 15.
Identity__RefreshTokenDaysQuanto a lungo una persona resta connessa senza usare Archestack. Predefinito 30.
Identity__MinimumPasswordLengthPredefinito 8.
Identity__MaxFailedLogins, Identity__LockoutMinutesDopo questo numero di password errate un account viene bloccato per questo tempo. Predefiniti 10 e 15.

API: posta

ImpostazioneCosa fa
Smtp__Host, Smtp__Port, Smtp__UseSslIl server di posta per gli inviti e la reimpostazione delle password. Porta 587 e SSL per impostazione predefinita. Senza host, l'admin che invia un invito riceve il link da inoltrare.
Smtp__Username, Smtp__PasswordLe credenziali di accesso al server di posta.
Smtp__From, Smtp__FromNameIl mittente che quelle email mostrano.

La posta che le applicazioni inviano passa per gli account di posta che ogni workspace configura nel suo builder.

API: file e backup

ImpostazioneCosa fa
Files__DirectoryDove vanno gli upload e i file dei workspace, per esempio /files. Mettici un volume: in un container senza volume, i file vanno persi al prossimo aggiornamento.
Files__MaxFileBytesIl file singolo più grande. Predefinito 100 MB.
Files__MaxWorkspaceBytesQuanto può conservare un workspace. Predefinito 0, nessun limite.
Backup__DirectoryDove vanno i backup, per esempio /backups. Anche questo è un volume, e copia ciò che ci finisce da un'altra parte.
Backup__RetentionDaysPer quanto tempo si conservano i backup. Predefinito 30.
Backup__CronScheduleQuando gira il backup notturno, come cron Quartz. Predefinito 0 0 3 * * ?, le 03:00.

API: scala e limiti

ImpostazioneCosa fa
Realtime__EntityChangesfalse impedisce alle schermate di aggiornarsi quando un record cambia altrove. Predefinito true. Disattivato, un'installazione serve molte più persone contemporaneamente; vedi Capacità e dimensionamento.
Cluster__EnabledPermette a più istanze dell'API di lavorare come una sola. Predefinito true; lascialo attivo.
RateLimiting__EnabledLimiti di richieste per chiamante. Predefinito true. I limiti valgono per singola istanza dell'API.
RateLimiting__PermitsPerMinuteRichieste che una persona può fare al minuto. Predefinito 2000.
RateLimiting__AuthPermitsPerMinuteTentativi di accesso al minuto da un indirizzo. Predefinito 20.
RateLimiting__PublicPagePermitsPerMinuteQuanto un visitatore senza account può chiedere alle pagine pubbliche al minuto. Predefinito 240.
Scripting__TypedData__EnabledLe business entity come set tipizzati negli script (Db.Order). Predefinito true.

API: chiavi

ImpostazioneCosa fa
DataProtection__CertificatePath, DataProtection__CertificatePasswordUn certificato che protegge le chiavi con cui sono cifrate le password memorizzate. Senza, quelle chiavi stanno nel database identity non protette, quindi una copia di quel database contiene entrambe le metà.
Push__VapidPublicKey, Push__VapidPrivateKey, Push__SubjectUna sola coppia di chiavi per le notifiche del browser in tutti i workspace. Se omessa, ogni workspace ne crea una propria. Non cambiarla mai dopo che le persone hanno consentito le notifiche: le loro sottoscrizioni smettono di funzionare.

API: monitoraggio

ImpostazioneCosa fa
Observability__EnabledInvia trace, metriche e log tramite OpenTelemetry. Predefinito false.
Observability__OtlpEndpointDove inviarli, per esempio http://otel-collector:4317.
Observability__Instance, Observability__EnvironmentIl nome di questa installazione nelle dashboard.

L'immagine web

ImpostazioneCosa fa
VITE_API_URLL'indirizzo dell'API come lo raggiunge il browser, per esempio https://api.example.com. Vuoto quando l'API è allo stesso indirizzo sotto /api.
BASE_PATHIl percorso sotto cui è servita, per esempio /archestack. Vuoto alla radice.
VITE_UI_MODEdashboard mostra il builder su / e l'app pubblicata sotto /app. kiosk mostra l'app pubblicata su /, per un indirizzo che è solo l'app.
VITE_DASHBOARD_URLCon kiosk, l'indirizzo del builder quando è su un altro hostname.
VITE_APP_URLCon dashboard, l'indirizzo dell'app pubblicata quando è su un altro hostname.
API_INTERNAL_URLL'indirizzo dell'API dentro la rete, per esempio http://api:8080. Le anteprime dei link nelle app di chat e le pagine che leggono i motori di ricerca vengono da lì. In Kubernetes, scrivi il nome completo del service, http://<service>.<namespace>.svc.cluster.local:8080.

L'immagine PostgreSQL

ImpostazioneCosa fa
POSTGRES_USER, POSTGRES_PASSWORDL'utente con cui si connette l'API. La password viene impostata quando PostgreSQL si avvia per la prima volta su un disco vuoto; cambiare la variabile dopo non la cambia nel database.
POSTGRES_DBpostgres. L'API crea i propri database.
PGDATASolo su un disco nuovo la cui radice contiene lost+found, come in Kubernetes: una cartella sotto il punto di montaggio, per esempio /var/lib/postgresql/data/pgdata.

Dai al container 1 GB di memoria condivisa, come spiega Eseguire le immagini.