omniaHandleiding
Voor technisch beheerders

Productie installeren met containers

De productiebron is omnia-platform/deploy/compose.prod.yaml, met de bijbehorende configuratie en Caddy-regels. Gebruik deze handleiding als leesroute en controleer altijd het voorbeeldbestand van de gekozen platformversie.

Voorbereiden

Reserveer een Docker-host en een domein. De referentieopstelling gebruikt het hoofddomein plus admin., api., desk. en kiosk.. DNS moet naar de host verwijzen. Caddy publiceert de HTTP- en HTTPS-poorten en regelt certificaten.

cp deploy/env.prod.example deploy/.env.prod

Vul minimaal database- en formuliergeheimen, het proxygeheim, een bruikbaar subnet, de publieke domeinnaam en SMTP-instellingen in. Genereer aparte willekeurige waarden; bewaar .env.prod buiten Git.

Aanmelden en toegang

Richt de OpenID Connect-provider in met de juiste issuer, API-audience en scope. Web en admin hebben elk hun eigen client-ID en client-secret. De callbackadressen zijn https://<domein>/auth/callback en https://admin.<domein>/auth/callback.

Stel aparte willekeurige waarden in voor OMNIA_WEB_SESSION_SECRET en OMNIA_ADMIN_SESSION_SECRET, elk van ten minste 32 tekens. Alleen tokens die aan de adminclient zijn uitgegeven kunnen Owner- of Administrator-rechten geven; OMNIA_IDENTITY_PRIVILEGED_CLIENTS_CLAIM noemt de claim met het client-ID (azp als standaard, client_id voor een RFC 9068-provider). Met een ingestelde issuer en zonder admin-client-ID weigert de API te starten.

De registratiebalie meldt aan als publieke client. Vul OMNIA_DESK_IDENTITY_AUTHORITY, OMNIA_DESK_IDENTITY_CLIENT_ID en OMNIA_DESK_IDENTITY_API_SCOPE alle drie in, of geen ervan. Deze waarden gaan naar de browser; zet er dus nooit een geheim in.

De standaardstart van Compose is niet hetzelfde als een volledig ingerichte identiteit: controleer de eigenaar en de toegang met de eigen providerprocedure.

Opstarten

Vanuit de platformrepo:

docker compose -f deploy/compose.prod.yaml \
  --env-file deploy/.env.prod up -d --build --wait

Controleer de migratierun, API-gereedheid, worker en beide portals. Test aanmelden, een toegestane beheeractie en een geweigerde actie met een beperkt account. Controleer ook een testbericht en een upload; een bereikbare homepage bewijst die ketens niet.

Bijwerken vanaf een eerdere release

Lees deploy/README.md en de upgradenotities bij beheer voordat je de nieuwe images start. Voor de gecontroleerde revisie:

  • Vervang het ene sessiegeheim. OMNIA_SESSION_SECRET bestaat niet meer. Genereer OMNIA_WEB_SESSION_SECRET en OMNIA_ADMIN_SESSION_SECRET apart. Iedereen meldt zich daarna opnieuw aan.
  • Verwijder de hosts realtime. en displays.. De rol voor live-updates en de voorlopige app voor zaaldisplays zijn op 9 november 2026 teruggetrokken. Verwijder hun DNS-namen en voer up --remove-orphans uit om de oude containers te verwijderen.
  • Voer eerst de ordercontroles uit. De nieuwe regel ck_orders_buyer_shape laat de migratie mislukken als bestaande bestellingen de koperregels overtreden. Voer vóór de upgrade de controlequery uit de upgradenotities bij beheer uit.

Evaluatie is een andere opstelling

deploy/compose.yaml start de backend-evaluatieomgeving. Die start niet automatisch de volledige website. De worker heeft bovendien een publiek portaladres nodig voor links in berichten. Gebruik de productieopstelling niet zonder SMTP, identiteit en opslag te verifiëren.

De referentieopstelling voor refresh-coördinatie is voor één Docker-host. Kopieer haar volumes niet naar een willekeurige multihostopstelling. Lees beheer en herstel voordat je bijwerkt of backups terugzet.

Over dit hoofdstuk

Broncode gecontroleerd; praktijkcontrole nodig

Gecontroleerd op 2026-11-14 · platform fb1761f7

Bronnen: Implementatie

Van eerste voorstel tot evenement: volg jouw rol, keuzes en volgende stap.