Self-host NexBasira
Den samme Docker-stacken som kjører vår administrerte SaaS er det vi leverer on-prem. Samme Django-backend, samme React SPA, samme audit-kjede. Tilgjengelig på Enterprise-nivået med en DPA + InfoSec-spørreskjemapakke.
docs/SELF_HOST.md i kildekode-repoet — vi leverer den til Enterprise-kunder med installasjonspakken deres. Ta kontakt via Kontakt (Enterprise) for å starte samtalen. Hvorfor self-host
- Regulatorisk pålegg — sektoren eller jurisdiksjonen din krever at bevis bor på din infrastruktur.
- Nettverksisolasjon — inspektørene dine opererer inne i et VPN; utgående til en SaaS er ikke et alternativ.
- Egendefinert datalokasjon — du må lande data i en spesifikk region eller suveren sky.
- Kostnadsforutsigbarhet i stor skala — ved >5k inspeksjoner/måned er dedikert infrastruktur ofte billigere enn per-inspeksjon-nivået.
Arkitektur
Seks tjenester (pluss din eksisterende identitetsleverandør for SSO):
| Tjeneste | Hva den gjør | Image |
|---|---|---|
| caddy | TLS-terminering, HTTP-ruting, servering av statiske ressurser | caddy:2 |
| backend | Django-app — REST API, audit-kjede, SCIM, signering | ghcr.io/codelounge-io/certivisiopro/api (your tag) |
| frontend | Nginx som serverer den bygde SPA-en + statisk marketing | ghcr.io/codelounge-io/certivisiopro/web |
| postgres | Primært datalager, RLS-håndhevet tenant-isolasjon | postgres:16 |
| redis | Celery-broker + cache + øktlager | redis:7 |
| celery-worker + celery-beat | Bakgrunnsoppgaver (TSA-polling, etterbehandling av opptak, oppbevaringssveip) | samme som backend |
| livekit | WebRTC SFU for det direkte videoplanet | livekit/livekit-server |
| minio (optional) | S3-kompatibelt objektlager for bevis + opptak | minio/minio |
For objektlagring kan du også peke mot hvilken som helst S3-kompatibel tjeneste (AWS S3, Wasabi, OVH Object Storage, din eksisterende on-prem Ceph-klynge). MinIO er inkludert som standard for ekte air-gap-installasjoner.
Minimumskrav
| Aspekt | Minimum | Komfortabelt |
|---|---|---|
| OS | Linux x86_64 (Ubuntu 22.04 LTS or Debian 12) | samme |
| Docker / Compose | Docker 24 + Compose v2 | samme |
| CPU | 4 vCPU | 8 vCPU |
| RAM | 8 GB | 16 GB |
| Disk | 200 GB SSD (DB + innledende bevis) | 500 GB + S3-kompatibelt objektlager for opptak |
| Network | Statisk IP, portene 443 + WebRTC (LiveKit) tilgjengelige | samme |
| TLS | Caddy auto-provisjonerer via Let's Encrypt | BYO-sertifikat for lukkede nettverk |
Bootstrap
Omtrent slik ser det ut som installasjonsskriptet automatiserer:
# 1. Clone the released bundle
git clone --depth 1 https://github.com/codelounge-io/nexbasira-onprem.git
cd nexbasira-onprem
# 2. Fill in env from the example
cp .env.example .env
$EDITOR .env # set DOMAIN, SECRET_KEY, DB password, S3 creds, LiveKit keys
# 3. Pull pinned images
docker compose pull
# 4. Run migrations + create the platform superuser
docker compose run --rm backend python manage.py migrate
docker compose run --rm backend python manage.py createsuperuser
# 5. Start everything
docker compose up -d
# 6. Tail the logs until you see the audit-chain self-test pass
docker compose logs -f backend | grep "audit chain self-test" På en ren Ubuntu 22.04 VPS kjører hele sekvensen på cirka 5 minutter.
Hva du får rett ut av boksen
- Både
app.<your-domain>(SPA) +<your-domain>(marketing-side, valgfritt) på én enkelt Caddy. - Automatisk TLS via Let's Encrypt — eller pinn til en privat CA på lukkede nettverk.
- Postgres RLS-migreringer + de fire systemrollene seedet.
- Audit-kjede Postgres-trigger (append-only).
- Demo-økt-seeder slik at førstegangsadministratorer kan utforske med realistiske data.
Dag-2-drift
- Sikkerhetskopier — Postgres logisk dump hver natt + S3-livssyklus for objekter.
docs/SELF_HOST.md-runbooken inkluderer røyktester for gjenoppretting-fra-backup, inkludertaudit-chain verify. - Oppgraderinger — hent den nye image-taggen,
docker compose up -d. Skjemamigreringer er kun-forover + testet i CI; rollback er dokumentert for bruk i siste instans. - Observerbarhet — Django sender ut strukturerte JSON-logger med
tenant_id+session_id-etiketter; rut til din eksisterende loggaggregator. - Metrikker — Prometheus-eksportør-endepunkt på backenden; skrap fra din overvåkingsstack.
Hva som er annerledes enn administrert SaaS
| Aspekt | Administrert SaaS | Self-host |
|---|---|---|
| TSA-backends | YodaLedger + FreeTSA + OpenTimestamps konfigurert som standard | Konfigurerbart. Du kan deaktivere hvilken som helst; du kan koble inn en betalt QTSP (DataSure) direkte. |
| Opptakslagring | EU S3 med livssyklus til Glacier | Din S3-kompatible bucket; livssyklus er ditt ansvar. |
| E-postlevering | Sendgrid i vår infrastruktur | Konfigurer SMTP-env-vars mot ditt eget relé. |
| SMS-levering | Twilio i vår infrastruktur (opt-in) | Twilio med din egen konto, eller null-backend hvis ikke brukt. |
| Stripe-fakturering | Innebygd | Deaktivert som standard — self-host innebærer din egen faktureringskontrakt. |
| Oppdateringer | Vi deployer | Du henter image-tagger i ditt eget tempo. |
Support
Enterprise self-host-kunder får en dedikert Slack + Connect-kanal, 1-times SLA, planlagte gjennomganger av oppgraderinger, og direkte tilgang til vår vaktrotasjon for produksjonshendelser.
Hva er neste
- Start en Enterprise-samtale
- Sikkerhetsstilling — hva som er i InfoSec-spørreskjemapakken
- DPA — hva som er i kontraktspakken