Server installieren

Windows 11

  1. Entpacken Sie LumiScanAnnotationWeb-<Version>-win64.zip, z. B. nach C:\LumiScanAnnotationWeb. Es enthält:

    C:\LumiScanAnnotationWeb\
        lumiscan-annotation-server.exe    der Server
        www\                              die Webseiten
        config\annotation-server.example.json
        README.md, Changelog.md
  2. Kopieren Sie config\annotation-server.example.json nach config\annotation-server.json und passen Sie die Datei an, siehe Konfiguration. Für den Anfang genügen port und entweder data_root (ein vorhandener Bildordner) oder projects_root.

  3. Starten Sie den Server in einer Eingabeaufforderung:

    cd C:\LumiScanAnnotationWeb
    lumiscan-annotation-server.exe --config config\annotation-server.json
  4. Geben Sie den Port (Standard 8080) in der Windows-Firewall für das Netz der Benutzer frei.

Ubuntu 24.04

  1. Kopieren Sie den Server und den Ordner www, z. B. nach /opt/lumiscan-annotation-web, und die Konfiguration nach /etc/lumiscan-annotation-web/annotation-server.json.

  2. Legen Sie ein Dienstkonto an, das die Projektordner lesen und schreiben darf:

    sudo useradd --system --home-dir /var/lib/lumiscan-annotation-web --create-home --shell /usr/sbin/nologin lsa
    sudo chown -R lsa: /etc/lumiscan-annotation-web
  3. Starten Sie ihn einmal von Hand, um die Konfiguration zu prüfen:

    sudo -u lsa /opt/lumiscan-annotation-web/lumiscan-annotation-server --config /etc/lumiscan-annotation-web/annotation-server.json

Erste Anmeldung

Beim ersten Start, wenn es noch keine Konten gibt, legt der Server den lokalen Benutzer admin mit einem zufälligen Passwort an und schreibt es in initial-admin-password.txt neben der Datenbank (das Protokoll nennt die Datei).

  1. Öffnen Sie https://<Server>:8080/ im Browser. Der Browser warnt vor dem selbstsignierten Zertifikat: Vergleichen Sie den Fingerabdruck mit dem Serverprotokoll und fahren Sie fort, siehe HTTPS.

  2. Melden Sie sich als admin mit diesem Passwort an.

  3. Wählen Sie ein neues Passwort. Die Datei wird dann gelöscht.

  4. Legen Sie die weiteren Konten an oder richten Sie Verzeichnis oder Single Sign-on ein, siehe Benutzer und Rollen.

Kann sich niemand mehr als Administrator anmelden:

lumiscan-annotation-server --config <Konfiguration> --reset-password admin

Das gibt ein neues Passwort aus (und legt das Konto an, falls es fehlt). Es muss bei der nächsten Anmeldung geändert werden.

Server automatisch starten

Der Server ist ein Programm ohne Fenster. Starten Sie ihn beim Hochfahren mit den üblichen Mitteln des Betriebssystems, unter dem Dienstkonto.

Linux (systemd), /etc/systemd/system/lumiscan-annotation-web.service
[Unit]
Description=LumiScan Annotation Web
After=network-online.target
Wants=network-online.target

[Service]
User=lsa
ExecStart=/opt/lumiscan-annotation-web/lumiscan-annotation-server --config /etc/lumiscan-annotation-web/annotation-server.json
Restart=on-failure

[Install]
WantedBy=multi-user.target

Dann sudo systemctl enable --now lumiscan-annotation-web.

Windows (Aufgabenplanung), in einer PowerShell als Administrator
$exe = "C:\LumiScanAnnotationWeb\lumiscan-annotation-server.exe"
$action = New-ScheduledTaskAction -Execute $exe -Argument "--config C:\LumiScanAnnotationWeb\config\annotation-server.json" -WorkingDirectory "C:\LumiScanAnnotationWeb"
$trigger = New-ScheduledTaskTrigger -AtStartup
$settings = New-ScheduledTaskSettingsSet -RestartCount 999 -RestartInterval (New-TimeSpan -Minutes 1) -ExecutionTimeLimit ([TimeSpan]::Zero)
Register-ScheduledTask -TaskName "LumiScan Annotation Web" -Action $action -Trigger $trigger -Settings $settings -User "SYSTEM" -RunLevel Highest

Das Konto muss die Projektordner lesen und schreiben können; für Netzwerkfreigaben verwenden Sie statt SYSTEM ein Dienstkonto der Domäne.

Befehlszeilenoptionen

Optionen auf der Befehlszeile haben Vorrang vor der Konfigurationsdatei.

--config <Datei>

die Konfigurationsdatei (JSON)

--data-root <Ordner>

ein Bildordner, wird zum Projekt default

--bind <Adresse>, --port <Port>

Adresse (Standard 0.0.0.0) und Port (Standard 8080)

--https <Modus>

auto, on oder off, siehe HTTPS

--web-root <Ordner>

die Webseiten (Standard: www neben dem Programm)

--log-dir <Ordner>

rotierende Protokolldateien dorthin schreiben

--database <Datei>

die Datenbank (Standard: annotation-server.db neben der Konfiguration); nur lokale Festplatte

--backup <Datei>

eine Sicherung schreiben und beenden; geht auch, während der Server läuft

--restore <Datei>

eine Sicherung wiederherstellen und beenden; der Server muss gestoppt sein (--force überspringt die Prüfung)

--reset-password <Benutzer>

einem lokalen Benutzer ein neues zufälliges Passwort geben, ausgeben und beenden

--version, --help

Version, Liste der Optionen

Aktualisieren

  1. Stoppen Sie den Server. Optional, aber empfohlen: vorher eine Sicherung erstellen (--backup, siehe Sicherung und Wiederherstellung).

  2. Ersetzen Sie das Programm und den Ordner www. Konfiguration und Datenbank bleiben.

  3. Starten Sie den Server. Er aktualisiert seine Datenbank bei Bedarf selbst.

  4. Die Benutzer laden die Seite im Browser neu.