Server installieren

Diese Seite beschreibt die direkte Installation von nucleus-server auf Linux-amd64. Nutzen Sie diese Variante für Self-Hosting ohne Containerplattform.

Architektur

server_installation_architecture browser Browser proxy Reverse Proxy browser->proxy HTTPS workspace Workspace proxy->workspace postgres PostgreSQL workspace->postgres storage Storage workspace->storage

Schnellstart

Der Setup-Assistent erzeugt die verschlüsselte Serverkonfiguration und fragt die erforderlichen Werte interaktiv ab.

bash
sudo apt install ./nucleus-server_<version>-1_amd64.deb

sudo install -d -m 0750 /etc/nucleus
sudo install -d -m 0750 /var/lib/nucleus/storage

nucleus-server setup -config /etc/nucleus/config.enc

export NUCLEUS_KEY=<bundle-aus-dem-setup>

nucleus-server -config /etc/nucleus/config.enc

Nach erfolgreichem Start sichern Sie:

  • Login des initialen System-Admins,
  • initiales Passwort,
  • initialen API-Key,
  • NUCLEUS_KEY.

Voraussetzungen

Bereiten Sie vor:

  • unterstütztes Linux-amd64-System,
  • freigegebenes Release-Paket,
  • PostgreSQL-Datenbank,
  • persistenten Storage-Pfad,
  • TLS-Zertifikat oder Reverse Proxy,
  • Geheimnisverwaltung für NUCLEUS_KEY und Erstzugangsdaten.

Release herunterladen

Laden Sie immer gemeinsam herunter:

  • das Installationspaket,
  • manifest.txt,
  • SHA256SUMS.

Prüfen Sie anschließend die Integrität des Downloads:

bash
sha256sum -c SHA256SUMS

Die freigegebenen Releases liegen unter:

text
https://git.schukai.me/releases/nucleus-server/releases

Paket wählen

SystemPaket
Debian oder Ubuntu.deb
RHEL, Fedora oder kompatible Systeme.rpm
Eigene Service-Definitiontar.gz

Paket installieren

bash
sudo apt install ./nucleus-server_<version>-1_amd64.deb
bash
sudo rpm -Uvh nucleus-server-<version>-1.x86_64.rpm

Pakete installieren das Binary in den Systempfad. Sie legen keine Benutzer, Dienste, Konfigurationen oder Datenbank an.

Wenn Sie das Archivformat verwenden:

bash
tar -xzf nucleus-server-<version>-linux-amd64.tar.gz
sudo install -m 0755 nucleus-server-<version>-linux-amd64/nucleus-server /usr/local/bin/nucleus-server
nucleus-server version

Konfiguration anlegen

bash
sudo install -d -m 0750 /etc/nucleus
sudo install -d -m 0750 /var/lib/nucleus/storage
nucleus-server setup -config /etc/nucleus/config.enc

Der Setup-Assistent fragt alle erforderlichen Werte interaktiv ab. Planen Sie diese Angaben vorab:

FeldWert
Listen Address:8443 für direkten HTTPS-Betrieb oder ein internes Listen-Ziel hinter Ihrem Reverse Proxy
Certificateselbstsigniertes Zertifikat für lokale Tests oder vorhandene Zertifikatsdateien, wenn der Server selbst TLS bereitstellt
HostHostname für das selbstsignierte Zertifikat, wenn der Server selbst TLS bereitstellt
System Domains (CSV)öffentliche Admin-Hostnamen ohne Protokoll, Pfad oder Port, zum Beispiel workspace.example
Storage path/var/lib/nucleus/storage oder ein anderer persistenter Pfad nach Ihrem Betriebsstandard
Database hostHostname oder Adresse Ihrer PostgreSQL-Datenbank
Database port5432, wenn Ihre Datenbank keinen anderen Port nutzt
Database userPostgreSQL-Benutzer für Workspace
Database namePostgreSQL-Datenbank für Workspace
Database passwordPasswort des PostgreSQL-Benutzers

Workspace verwendet System Domains (CSV), um öffentliche URLs korrekt zu erzeugen und die Administrationsoberfläche vor der Mandantenauswahl bereitzustellen. Weitere Details stehen unter System Domains verstehen.

Planen Sie TLS vor dem Produktivstart. Für lokale Tests kann der Setup-Assistent ein selbstsigniertes Zertifikat erzeugen. Für öffentlich erreichbare Umgebungen verwenden Sie ein vertrauenswürdiges Zertifikat oder TLS-Terminierung am Reverse Proxy. Weitere Details stehen unter TLS und Reverse Proxy.

Speichern Sie NUCLEUS_KEY in Ihrer Geheimnisverwaltung. Dokumentieren Sie den Pfad der Konfigurationsdatei, aber nicht den Inhalt der Datei oder den Laufzeitschlüssel.

Server starten

Der Server findet die Konfiguration über NUCLEUS_CONFIG, über ./nucleus.config.enc oder über /etc/nucleus/config.enc.

bash
export NUCLEUS_CONFIG=/etc/nucleus/config.enc
nucleus-server -config /etc/nucleus/config.enc

Stellen Sie den Laufzeitschlüssel über Ihre Geheimnisverwaltung bereit. Der Server liest zuerst /run/secrets/nucleus-key und danach NUCLEUS_KEY.

Erstzugangsdaten sichern

Beim ersten regulären Start legt Workspace den initialen System-Admin und einen initialen API-Key an. Der Server gibt diese Werte einmalig im Logblock SYSTEM INITIALIZED aus.

Lesen Sie den Startlog direkt nach dem ersten Start und speichern Sie in Ihrer Geheimnisverwaltung:

  • Login,
  • Passwort,
  • API-Key,
  • NUCLEUS_KEY.

Wenn Sie NUCLEUS_ADMIN_PASSWORD vor dem ersten Start selbst setzen, gibt der Server das Passwort nicht erneut im Log aus. Der initiale API-Key wird beim ersten Anlegen trotzdem einmalig angezeigt.

Erfolgreiche Installation

Prüfen Sie:

  • Browseranmeldung funktioniert,
  • initialer System-Admin kann sich anmelden,
  • PostgreSQL-Verbindung funktioniert,
  • Storage ist beschreibbar,
  • öffentliche URL funktioniert,
  • TLS-Zertifikat wird akzeptiert,
  • Version entspricht dem installierten Release.

Technische Basisprüfung:

bash
curl -sk https://127.0.0.1:8443/api/v1/ping
nucleus-server version

Prüfen Sie zusätzlich die öffentliche Admin-Domain über Ihren Reverse Proxy, wenn die Umgebung nicht nur lokal erreichbar sein soll.

Nächste Schritte