Reference

Ustawienia obrazów

Oba obrazy konfiguruje się przez zmienne środowiskowe. Nazwy w API używają podwójnego podkreślenia między poziomami, na przykład Smtp__Host. Pominięte ustawienie zachowuje wartość domyślną. Zestawy startowe ze stron Hosting z Dockerem, Hosting na Kubernetesie i Hosting na AKS już ustawiają wszystko, czego potrzebuje zwykła instalacja; ta strona służy do zmiany jednego z ustawień albo do własnej konfiguracji (Uruchamianie obrazów).

API: bazy danych

UstawienieCo robi
ConnectionStrings__DefaultConnectionBaza danych z danymi domyślnej przestrzeni roboczej, na przykład Host=postgres;Database=omnicore-db;Username=archestack;Password=.... Wymagane.
ConnectionStrings__CoreMetadane domyślnej przestrzeni roboczej: encje, strony, skrypty. Baza danych omnicore-core. Wymagane.
ConnectionStrings__IdentityUżytkownicy, przestrzenie robocze i klucze, wspólne dla wszystkich przestrzeni roboczych. Baza danych omnicore-identity. Wymagane.
ConnectionStrings__KeycloakTylko przy przenoszeniu użytkowników z Keycloak. W przeciwnym razie zostaw puste.
ConnectionStrings__ClusterJak kilka instancji API informuje się nawzajem o zmianach. Domyślnie baza danych identity; ustaw je na sam PostgreSQL, gdy pomiędzy jest connection pooler, taki jak PgBouncer.
Database__CreateMissingtrue tworzy bazę danych z danymi, gdy jej brakuje; dwie pozostałe są tworzone w każdym przypadku. Domyślnie false; zestawy ustawiają true.

Użytkownik w tych ciągach potrzebuje prawa do tworzenia baz danych: każda nowa przestrzeń robocza dostaje dwie własne, nazwane według powyższych nazw bazowych.

API: adresy

UstawienieCo robi
ASPNETCORE_URLSGdzie API nasłuchuje wewnątrz kontenera: http://+:8080.
ASPNETCORE_ENVIRONMENTZawsze Production. Każda inna wartość pokazuje szczegóły błędów każdemu.
Http__PathBaseŚcieżka, pod którą działa API, na przykład /archestack. Puste w katalogu głównym.
Identity__AppBaseUrlAdres buildera, na przykład https://apps.example.com/archestack. Tu prowadzą linki z zaproszeń i resetowania hasła.
ForwardedHeaders__TrustedProxiesAdresy proxy z przodu, których nagłówkowi X-Forwarded-For się ufa. Wartość domyślna obejmuje sieci prywatne; bez właściwej każdy odwiedzający wygląda jak proxy i dzieli z innymi jeden limit żądań.
Tenancy__HostSuffixUdostępnia każdą przestrzeń roboczą pod własną nazwą hosta, <label>.<suffix>, i pozwala przestrzeniom roboczym dodawać własne domeny. Domyślnie puste.

API: logowanie

UstawienieCo robi
Identity__ProviderBuiltin: Archestack sam loguje użytkowników. Domyślnie.
Identity__InitialAdminEmail, Identity__InitialAdminPasswordPierwszy administrator, tworzony przy pierwszym starcie, gdy nie ma jeszcze żadnego użytkownika. Używane raz: potem zmień hasło w Archestack. Pomiń oba, aby zamiast tego utworzyć administratora w builderze.
Identity__AllowCompanySignuptrue pozwala każdemu utworzyć własną firmę pod /register. Domyślnie false. Administratorzy firmy mogą uruchamiać skrypty na serwerze, więc zostaw to wyłączone, chyba że prowadzisz publiczną usługę.
Identity__AccessTokenMinutesJak długo token logowania jest ważny, zanim zostanie odnowiony. Domyślnie 15.
Identity__RefreshTokenDaysJak długo ktoś pozostaje zalogowany, nie korzystając z Archestack. Domyślnie 30.
Identity__MinimumPasswordLengthDomyślnie 8.
Identity__MaxFailedLogins, Identity__LockoutMinutesPo tylu błędnych hasłach konto jest blokowane na tyle minut. Domyślnie 10 i 15.

API: poczta

UstawienieCo robi
Smtp__Host, Smtp__Port, Smtp__UseSslSerwer pocztowy dla zaproszeń i resetowania haseł. Domyślnie port 587 i SSL. Bez hosta administrator, który wysyła zaproszenie, dostaje link do przekazania.
Smtp__Username, Smtp__PasswordDane logowania do serwera pocztowego.
Smtp__From, Smtp__FromNameNadawca, którego pokazują te wiadomości.

Poczta wysyłana przez aplikacje idzie przez konta pocztowe, które każda przestrzeń robocza konfiguruje w swoim builderze.

API: pliki i kopie zapasowe

UstawienieCo robi
Files__DirectoryGdzie trafiają przesłane pliki i pliki przestrzeni roboczych, na przykład /files. Podłącz tam wolumin: w kontenerze bez niego pliki giną przy następnej aktualizacji.
Files__MaxFileBytesNajwiększy pojedynczy plik. Domyślnie 100 MB.
Files__MaxWorkspaceBytesIle może przechowywać jedna przestrzeń robocza. Domyślnie 0, bez limitu.
Backup__DirectoryGdzie trafiają kopie zapasowe, na przykład /backups. To też wolumin, a to, co tam trafia, kopiuj w inne miejsce.
Backup__RetentionDaysJak długo przechowywane są kopie zapasowe. Domyślnie 30.
Backup__CronScheduleKiedy uruchamia się nocna kopia zapasowa, jako cron Quartz. Domyślnie 0 0 3 * * ?, czyli 03:00.

API: skala i limity

UstawienieCo robi
Realtime__EntityChangesfalse sprawia, że ekrany nie odświeżają się, gdy rekord zmienia się gdzie indziej. Domyślnie true. Po wyłączeniu jedna instalacja obsługuje jednocześnie znacznie więcej osób; zobacz Wydajność i dobór serwerów.
Cluster__EnabledPozwala kilku instancjom API działać jak jedna. Domyślnie true; zostaw włączone.
RateLimiting__EnabledLimity żądań na wywołującego. Domyślnie true. Limity obowiązują na każdą instancję API osobno.
RateLimiting__PermitsPerMinuteLiczba żądań, które jedna osoba może wysłać na minutę. Domyślnie 2000.
RateLimiting__AuthPermitsPerMinutePróby logowania na minutę z jednego adresu. Domyślnie 20.
RateLimiting__PublicPagePermitsPerMinuteIle odwiedzający bez konta może na minutę żądać od stron publicznych. Domyślnie 240.
Scripting__TypedData__EnabledBusiness Entities jako typowane zbiory w skryptach (Db.Order). Domyślnie true.

API: klucze

UstawienieCo robi
DataProtection__CertificatePath, DataProtection__CertificatePasswordCertyfikat chroniący klucze, którymi szyfrowane są przechowywane hasła. Bez niego te klucze leżą niezabezpieczone w bazie danych identity, więc kopia tej bazy zawiera obie połowy.
Push__VapidPublicKey, Push__VapidPrivateKey, Push__SubjectJedna para kluczy do powiadomień w przeglądarce dla wszystkich przestrzeni roboczych. Jeśli ją pominiesz, każda przestrzeń robocza tworzy własną. Nigdy jej nie zmieniaj, gdy użytkownicy zezwolili już na powiadomienia: ich subskrypcje przestaną działać.

API: monitoring

UstawienieCo robi
Observability__EnabledWysyła ślady, metryki i logi przez OpenTelemetry. Domyślnie false.
Observability__OtlpEndpointDokąd, na przykład http://otel-collector:4317.
Observability__Instance, Observability__EnvironmentNazwa tej instalacji na dashboardach.

Obraz web

UstawienieCo robi
VITE_API_URLAdres API, pod którym osiąga je przeglądarka, na przykład https://api.example.com. Puste, gdy API jest pod tym samym adresem pod /api.
BASE_PATHŚcieżka, pod którą działa obraz, na przykład /archestack. Puste w katalogu głównym.
VITE_UI_MODEdashboard pokazuje builder pod /, a opublikowaną aplikację pod /app. kiosk pokazuje opublikowaną aplikację pod /, dla adresu, który jest tylko aplikacją.
VITE_DASHBOARD_URLPrzy kiosk adres buildera, gdy jest pod inną nazwą hosta.
VITE_APP_URLPrzy dashboard adres opublikowanej aplikacji, gdy jest pod inną nazwą hosta.
API_INTERNAL_URLAdres API wewnątrz sieci, na przykład http://api:8080. Z niego pochodzą podglądy linków w komunikatorach i strony czytane przez wyszukiwarki. W Kubernetesie wpisz pełną nazwę usługi, http://<service>.<namespace>.svc.cluster.local:8080.

Obraz PostgreSQL

UstawienieCo robi
POSTGRES_USER, POSTGRES_PASSWORDUżytkownik, jako który łączy się API. Hasło jest ustawiane przy pierwszym starcie PostgreSQL na pustym dysku; późniejsza zmiana zmiennej nie zmienia go w bazie danych.
POSTGRES_DBpostgres. API samo tworzy swoje bazy danych.
PGDATATylko na nowym dysku, którego katalog główny zawiera lost+found, jak w Kubernetesie: folder poniżej punktu montowania, na przykład /var/lib/postgresql/data/pgdata.

Daj kontenerowi 1 GB pamięci współdzielonej, jak wyjaśnia strona Uruchamianie obrazów.