Εγκατάσταση on-prem του NexBasira
Η ίδια στοίβα Docker που τρέχει το managed SaaS μας είναι αυτό που παραδίδουμε on-prem. Ίδιο backend Django, ίδιο React SPA, ίδια αλυσίδα ελέγχου. Διαθέσιμο στο επίπεδο Enterprise με πακέτο DPA + ερωτηματολογίου InfoSec.
docs/SELF_HOST.md στο αποθετήριο πηγής — το παραδίδουμε σε πελάτες Enterprise με το πακέτο εγκατάστασης. Επικοινωνήστε μέσω Επικοινωνία (Enterprise) για να ξεκινήσετε τη συζήτηση. Γιατί on-prem
- Ρυθμιστική επιταγή — ο τομέας ή η δικαιοδοσία σας απαιτεί τα τεκμήρια να βρίσκονται στην υποδομή σας.
- Απομόνωση δικτύου — οι επιθεωρητές σας λειτουργούν μέσα σε ένα VPN· η εξερχόμενη σύνδεση σε ένα SaaS δεν είναι επιλογή.
- Προσαρμοσμένη έδρα δεδομένων — χρειάζεται να εγκαταστήσετε δεδομένα σε συγκεκριμένη περιοχή ή κυρίαρχο cloud.
- Προβλεψιμότητα κόστους σε κλίμακα — σε >5k επιθεωρήσεις/μήνα, η αποκλειστική υποδομή είναι συχνά φθηνότερη από το επίπεδο ανά επιθεώρηση.
Αρχιτεκτονική
Έξι υπηρεσίες (συν τον υπάρχοντα πάροχο ταυτότητας για SSO):
| Υπηρεσία | Τι κάνει | Image |
|---|---|---|
| caddy | Τερματισμός TLS, δρομολόγηση HTTP, εξυπηρέτηση στατικών πόρων | caddy:2 |
| backend | Εφαρμογή Django — REST API, αλυσίδα ελέγχου, SCIM, υπογραφή | ghcr.io/codelounge-io/certivisiopro/api (your tag) |
| frontend | Nginx που εξυπηρετεί το χτισμένο SPA + στατικό marketing | ghcr.io/codelounge-io/certivisiopro/web |
| postgres | Κύριος χώρος αποθήκευσης δεδομένων, απομόνωση tenant μέσω RLS | postgres:16 |
| redis | Celery broker + cache + αποθήκη συνεδριών | redis:7 |
| celery-worker + celery-beat | Εργασίες παρασκηνίου (polling TSA, μετα-επεξεργασία εγγραφών, sweep διατήρησης) | ίδιο με το backend |
| livekit | WebRTC SFU για το επίπεδο live βίντεο | livekit/livekit-server |
| minio (optional) | Αποθήκευση αντικειμένων συμβατή με S3 για τεκμήρια + εγγραφές | minio/minio |
Για την αποθήκευση αντικειμένων, μπορείτε επίσης να στοχεύσετε σε οποιαδήποτε υπηρεσία συμβατή με S3 (AWS S3, Wasabi, OVH Object Storage, το υπάρχον on-prem cluster Ceph σας). Το MinIO περιλαμβάνεται ως προεπιλογή για πραγματικές air-gap εγκαταστάσεις.
Ελάχιστες απαιτήσεις
| Ζήτημα | Ελάχιστο | Άνετο |
|---|---|---|
| OS | Linux x86_64 (Ubuntu 22.04 LTS or Debian 12) | ίδιο |
| Docker / Compose | Docker 24 + Compose v2 | ίδιο |
| CPU | 4 vCPU | 8 vCPU |
| RAM | 8 GB | 16 GB |
| Disk | 200 GB SSD (DB + αρχικά τεκμήρια) | 500 GB + αποθήκευση αντικειμένων συμβατή με S3 για εγγραφές |
| Network | Στατική IP, θύρες 443 + WebRTC (LiveKit) προσβάσιμες | ίδιο |
| TLS | Το Caddy παρέχει αυτόματα μέσω Let's Encrypt | BYO-cert για κλειστά δίκτυα |
Bootstrap
Χονδρικά το σχήμα που αυτοματοποιεί το script εγκατάστασης:
# 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" Σε ένα καθαρό VPS Ubuntu 22.04 όλη η ακολουθία τρέχει σε περίπου 5 λεπτά.
Τι παίρνετε έτοιμο
- Και το
app.<your-domain>(SPA) + το<your-domain>(ιστότοπος marketing, προαιρετικό) σε ένα ενιαίο Caddy. - Αυτόματο TLS μέσω Let's Encrypt — ή καρφίτσωμα σε ιδιωτική CA σε κλειστά δίκτυα.
- Μεταναστεύσεις Postgres RLS + οι τέσσερις ρόλοι συστήματος αρχικοποιημένοι.
- Trigger Postgres αλυσίδας ελέγχου (μόνο-προσθήκης).
- Seeder συνεδρίας demo ώστε οι πρωτοεμφανιζόμενοι διαχειριστές να πειραματιστούν με ρεαλιστικά δεδομένα.
Λειτουργίες Day-2
- Αντίγραφα ασφαλείας — νυχτερινό logical dump Postgres + κύκλος ζωής S3 για αντικείμενα. Το runbook
docs/SELF_HOST.mdπεριλαμβάνει smoke tests επαναφοράς-από-αντίγραφο συμπεριλαμβανομένου τουaudit-chain verify. - Αναβαθμίσεις — τραβήξτε το νέο image tag,
docker compose up -d. Οι μεταναστεύσεις σχήματος είναι μόνο-εμπρός + δοκιμασμένες σε CI· η επαναφορά τεκμηριώνεται για χρήση ως έσχατη λύση. - Παρατηρησιμότητα — το Django εκπέμπει δομημένα logs JSON με ετικέτες
tenant_id+session_id· δρομολογήστε τα στον υπάρχοντα συγκεντρωτή logs σας. - Μετρικές — endpoint exporter Prometheus στο backend· κάντε scrape από τη στοίβα παρακολούθησής σας.
Τι διαφέρει από το managed SaaS
| Ζήτημα | Managed SaaS | On-prem |
|---|---|---|
| Backends TSA | YodaLedger + FreeTSA + OpenTimestamps διαμορφωμένα από προεπιλογή | Διαμορφώσιμα. Μπορείτε να απενεργοποιήσετε οποιοδήποτε· μπορείτε να συνδέσετε έναν επί πληρωμή QTSP (DataSure) απευθείας. |
| Αποθήκευση εγγραφών | EU S3 με κύκλο ζωής προς Glacier | Το δικό σας bucket συμβατό με S3· ο κύκλος ζωής εναπόκειται σε εσάς. |
| Παράδοση email | Sendgrid στην υποδομή μας | Διαμορφώστε τις env vars SMTP στο δικό σας relay. |
| Παράδοση SMS | Twilio στην υποδομή μας (opt-in) | Twilio με τον δικό σας λογαριασμό, ή null backend αν δεν χρησιμοποιείται. |
| Χρέωση Stripe | Ενσωματωμένη | Απενεργοποιημένη από προεπιλογή — η εγκατάσταση on-prem συνεπάγεται το δικό σας συμβόλαιο χρέωσης. |
| Ενημερώσεις | Εμείς κάνουμε deploy | Τραβάτε image tags με τον δικό σας ρυθμό. |
Υποστήριξη
Οι πελάτες on-prem Enterprise λαμβάνουν αποκλειστικό κανάλι Slack + Connect, SLA 1 ώρας, προγραμματισμένες καθοδηγήσεις αναβάθμισης και άμεση πρόσβαση στη βάρδια on-call μας για συμβάντα παραγωγής.
Τι ακολουθεί
- Ξεκινήστε μια συζήτηση Enterprise
- Στάση ασφάλειας — τι περιλαμβάνει το πακέτο ερωτηματολογίου InfoSec
- DPA — τι περιλαμβάνει το πακέτο συμβολαίου