Server installieren

Diese Seite beschreibt die direkte Installation von nucleus-server auf Linux-amd64. Nutzen Sie diese Variante, wenn Sie Workspace ohne Container direkt auf einem Linux-Server betreiben möchten.

Nach Abschluss läuft ein Workspace-Server mit verschlüsselter Konfiguration, PostgreSQL-Anbindung, persistentem Storage und initialem Administratorzugang.

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 schnelle Pfad besteht aus fünf Schritten:

  1. Release-Paket herunterladen und Prüfsumme prüfen.
  2. Paket oder Archiv installieren.
  3. Verzeichnisse für Konfiguration und Storage anlegen.
  4. nucleus-server setup ausführen und NUCLEUS_KEY sichern.
  5. Server starten, Erstzugangsdaten sichern und /api/v1/ping prüfen.

Beispiel für Debian oder Ubuntu:

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.

Begriffe vor dem Setup

BegriffBedeutung
PostgreSQLDatenbank, in der Workspace Mandanten, Benutzer, Einstellungen und fachliche Daten speichert.
StorageDauerhafter Dateiablagepfad für Uploads, Dokumente und generierte Dateien. Dieser Pfad darf bei Neustarts und Updates nicht verloren gehen.
KonfigurationsdateiVerschlüsselte Datei mit Servereinstellungen, zum Beispiel /etc/nucleus/config.enc.
NUCLEUS_KEYLaufzeitschlüssel für die verschlüsselte Konfiguration. Ohne passenden Schlüssel kann Workspace die Konfigurationsdatei nicht lesen.
System Domains (CSV)Admin-Hostnamen ohne Protokoll, Pfad oder Port, zum Beispiel workspace.example.
TLSHTTPS-Verschlüsselung. Für lokale Tests kann der Setup-Assistent ein selbstsigniertes Zertifikat erzeugen; produktiv verwenden Sie ein vertrauenswürdiges Zertifikat oder einen Reverse Proxy.

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
Eigenes glibc-basiertes Linux-amd64-Systemtar.gz

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

Debian oder Ubuntu installieren

Installieren Sie das .deb-Paket:

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

Fahren Sie danach mit Verzeichnisse anlegen fort.

Fedora, RHEL oder kompatible Systeme installieren

Installieren Sie das .rpm-Paket:

bash
sudo rpm -Uvh nucleus-server-<version>-1.x86_64.rpm
nucleus-server version

Fahren Sie danach mit Verzeichnisse anlegen fort.

Generisches Linux-Archiv installieren

Nutzen Sie das Archiv, wenn Sie kein .deb- oder .rpm-Paket verwenden möchten:

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

Fahren Sie danach mit dem gemeinsamen Setup fort.

Verzeichnisse anlegen

Legen Sie einen Ort für die verschlüsselte Konfiguration und einen dauerhaften Storage-Pfad an:

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

/etc/nucleus/config.enc enthält später die verschlüsselte Konfiguration. /var/lib/nucleus/storage ist der Standardpfad für dauerhafte Dateien. Wählen Sie andere Pfade nur, wenn Ihr Betriebsstandard das verlangt und Backups diese Pfade einschließen.

Konfiguration anlegen

Starten Sie den Setup-Assistenten:

bash
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
export NUCLEUS_KEY=<bundle-aus-dem-setup>
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