Seit Data Crow 4.0 ist es möglich, Data Crow als Server zu betreiben. Dies ermöglicht es den Clients, sich mit einer einzigen Instanz von Data Crow zu verbinden.
Die Server-Edition ist ein erweiterter Server, ein kombinierter Web- und Anwendungsserver. Das bedeutet, dass die Benutzer über den Thick-Client (die Data Crow-Anwendung) und/oder den Web-Client (den Browser) eine Verbindung zu Data Crow herstellen können. Der Server ermöglicht es mehreren Benutzern, sich mit einem dieser Clients (Thick-/Web-Client) gleichzeitig mit dem Server zu verbinden. Die Benutzerverwaltungsfunktion ermöglicht es Ihnen, granulare Benutzerberechtigungen pro Benutzer bis hin zur Feldebene festzulegen.
Die Server-Edition ist "headless", d. h. sie kann in Umgebungen ohne grafische Benutzeroberfläche ausgeführt werden.
Der Server hat mehrere Rollen, er ist:
- Ein Anwendungsserver, der es Thick Clients ermöglicht, sich sicher zu verbinden.
- Ein Webserver, der es Browsern ermöglicht, sich zu verbinden.
- ein API-Server, über den andere Dienste außerhalb von Data Crow eine Verbindung herstellen und Informationen abrufen können (ausschließlich mit Ihrer Zustimmung). Sowohl die Webversion als auch die Data Crow Reader App nutzen diese API.
Installieren des Servers
#
So installieren Sie den Server:
- Entpacken Sie die gezippte Data Crow Server-Distribution an den Installationsort.
Das war’s schon – es ist keine weitere Installation erforderlich. Allerdings ist Java Version 17 oder höher erforderlich.
Einrichten des Servers #
Genauso wie der normale Client einen Benutzerordner benötigt, in dem er die Daten und Einstellungen speichert, benötigt auch der Server einen solchen Ordner. Sie können wählen, ob die Server-Edition einen neuen, leeren Benutzerordner einrichten soll, oder ob Sie einen vorhandenen Benutzerordner verwenden wollen.
Tipp: Verwenden Sie den Thick-Client, um den anfänglichen Benutzerordner einzurichten - verwenden Sie den Client, um Benutzer anzulegen, die Systemeinstellungen zu ändern und Data Crow grundsätzlich so zu konfigurieren, dass es Ihren Anforderungen entspricht. Im Gegensatz zum Web-Client, der nicht alle Funktionen des Thick-Clients bietet.
Betrieb des Servers
#
Der Server hat keine grafische Benutzeroberfläche (GUI), d.h. er ist vollständig auf die Befehlszeile angewiesen. Öffnen Sie das Terminal (Linux- und Mac-Benutzer) / die Eingabeaufforderung (Windows-Benutzer) und navigieren Sie zum Installationsordner von Data Crow Server.
Im folgenden Beispiel werde ich zeigen <command> für den Startbefehl Data Crow;
- Nur Windows: Java –Xmx1024m –jar datacrow-server.jar
Der Parameter -Xmx1024m gibt die Menge des für Data Crow verfügbaren Speichers an. Sie können diesen Wert bei Bedarf in eine andere Zahl ändern. - Windows: datacrow-server.exe (oder das Obige, beides funktioniert)
Jetzt sind wir bereit, den Server zu starten.
<command> -Benutzername: –Port: –imageserverport: -webserverport: –Anmeldedaten:/
Erläuterung:
- Die <command> Ich habe oben erklärt, dass Sie die richtige Syntax für die von Ihnen verwendete Plattform verwenden müssen.
- userdir: gibt den Speicherort des Benutzerordners an.
Beispiel (Windows): -Userdir:c:/server-data - Hafen: gibt die Hauptportnummer für den Anwendungsserver an. Der Standardanschluss ist 9000. Wenn Sie den Port-Parameter nicht angeben, wird Port 9000 verwendet.
Beispiel: -Anschluss:9000
Nach dem Start des Servers stellen die Clients eine Verbindung her, indem sie den Data Crow Client im Client-Modus starten (Parameter -client). - imageserverport: gibt den zu verwendenden Port für den HTTP-Bildserver an. Standardmäßig ist dies Port 8081. Wenn Sie den Port-Parameter nicht angeben, wird Port 8081 verwendet.
Beispiel: - imageserverport:8081 - Webserver-Port: Gibt den zu verwendenden Port für den Webserver an. Wenn dieser nicht angegeben wird, wird das Webserver-Modul nicht gestartet.
Beispiel: - Webserverport:8080
Nach dem Start stellen die Clients wie folgt eine Verbindung zum Server her:
https://:/Datacrow
Example: https://192.168.178.12:8080/datacrow. - Empfehlungsschreiben: Benutzername und Passwort für den Administrator. Dies ist ein aus Sicherheitsgründen erforderlicher Parameter. Der Standardbenutzer für Data Crow ist SA mit einem leeren Kennwort. Es wird empfohlen, für jeden Benutzer ein Passwort festzulegen, wenn Sie die Client-Server-Einrichtung verwenden.
Beispiel #1 (Benutzer rwaals, pw 123456): -Zugangsdaten:rwaals/123456
Beispiel #2 (Standardbenutzer): -Zeugnisse:SA
Ein Hinweis zu den Anmeldedaten: Sie können diese auch in der Datei datacrow.credentials angeben. Wenn diese Datei im Installationsordner des Data Crow-Servers vorhanden ist, liest Data Crow die Anmeldedaten aus dieser Datei und sie müssen nicht mehr als Parameter angegeben werden. Die Datei ist standardmäßig nicht vorhanden; erstellen Sie die Datei (eine einfache Textdatei) und geben Sie die Anmeldedaten in diese Datei ein: /.
Zum Beispiel: rwaals/123456
Andere, optionale Parameter:
- bindto: Überschreibt die Standardkonfiguration, bei der sich der Data Crow-Server an Ihre IP-Adresse bindet. Dies ist nur in Ausnahmefällen erforderlich, in denen Data Crow nicht die richtige IP-Adresse erkennt, an die er sich binden soll.
- Rechnername Der Name des Servers. Nützlich, wenn Sie die IP-Adresse nicht als Zieladresse verwenden möchten.
- api_adresse_überschreiben Dies dient dazu, die automatische Adresszuweisung des API-Servers durch Data Crow zu überschreiben. Mit dieser Option können Sie die API-Adresse einem anderen lokalen Port zuweisen, der beispielsweise von Caddyfile genutzt wird (Reverse-Proxy).
- imageserver_adresse_überschreiben Dies dient dazu, die automatische Adresszuweisung des Bildservers durch Data Crow zu überschreiben. Mit dieser Option können Sie die Adresse des Bildservers einem anderen lokalen Port zuweisen, der beispielsweise von Caddyfile genutzt wird (Reverse-Proxy).
- dir Geben Sie das Installationsverzeichnis des Data Crow-Servers an (falls Probleme auftreten sollten).
- debuggen Ermöglichen Sie dem Data Crow-Server eine umfassende Protokollierung.
Überprüfen des Servers #
Wenn alles in Ordnung ist, wird der Server etwas ähnliches wie unten melden:
INFO [main] (DcServer.java\:140) – Server wurde gestartet, bereit für Client-Verbindungen.
INFO [main] (DcServer.java\:141) – Client kann sich mit der IP-Adresse 192.168.0.121 über Port 9000 und über den Bild-Port 9001 verbinden
INFO [main] (DcServer.java\:144) – Lausche auf CTRL-C zur Serverbeendigung.
Sie gibt die aktuelle IP-Adresse sowie die zugewiesenen Portnummern an.
Fehler werden direkt in der Konsole angezeigt. Zusätzlich gibt es die Standard-Protokolldatei, die sich im Benutzerordner befindet (data_crow.log).
Wenn Sie den Server debuggen (oder mehr Meldungen sehen) möchten, können Sie beim Start den Parameter -debug angeben.
Anhalten des Servers #
Drücken Sie CTRL-C im Terminal-/Befehlseingabefenster.
Verbindung zu Data Crow: (Thin) Web Client #
Die Verbindung zum Webserver ist die einfachste Möglichkeit. Rufen Sie mit einem Webbrowser die Adresse des Servers wie folgt auf:
http://:/
Zum Beispiel: https://192.168.178.120:8080/
Verbindung zu Data Crow: (Thick) Client #
Jede Installation über 4.0 kann eine Verbindung zu einem Server herstellen. Es ist eine einfache Angelegenheit, den Befehl -client beim Start von Data Crow anzugeben:
Im folgenden Beispiel zeige ich die <Befehl> für den Startbefehl des Data Crow-Clients;
- Für Windows-Benutzer ersetzen Sie dies durch:
datacrow.exe - Für andere Plattformen verwenden:
Java –Xmx8096m –jar datacrow.jar
Der –Xmx8096m Dieser Parameter legt fest, wie viel Speicher Data Crow zur Verfügung steht. Bei Bedarf können Sie diesen Wert ändern.
Stellen Sie eine Verbindung zum Server her, indem Sie Data Crow wie folgt starten (ändern Sie die Verknüpfung):
-Client
Wenn der Client startet, wird der folgende Anmeldedialog angezeigt:
- Login-Name: Ihren Benutzernamen (der Standardbenutzer ist SA)
- Passwort: Ihr Passwort (das Passwort für den Benutzer SA ist leer)
- Server-Adresse: die IP-Adresse des Servers (die IP-Adresse finden Sie in der Server-Konsole; in einem internen Netzwerk könnte die IP-Adresse z. B. 192.168.0.10 lauten).
- Anwendungsserver-Anschluss: der auf dem Server konfigurierte Port (Standard ist 9000). Diese Einstellung wird beibehalten.
- Bilderserver-Adresse: die Adresse des Bildservers, normalerweise dieselbe Adresse wie der Server selbst.
- Image-Server-Anschluss: der auf dem Server konfigurierte Port (Standard ist 9001). Diese Einstellung wird beibehalten.
Webserver mit SSL-Sicherheit #
Wenn Sie auch unterwegs Zugriff auf Ihre Data Crow-Sammlung haben möchten, ist das Hosten des Data Crow-Servers auf einem VPS (Virtual Private Server) eine praktische und kostengünstige Option. Ein kleiner VPS mit Ubuntu, 2 GB RAM und 100 GB Speicherplatz ist mehr als ausreichend, und solche Instanzen sind zu geringen monatlichen Kosten weit verbreitet.
Einrichten des Servers
Beginnen Sie mit einem Headless-Ubuntu-VPS – eine grafische Benutzeroberfläche ist nicht erforderlich. Installieren Sie Java (OpenJDK 21 oder höher wird empfohlen) und laden Sie anschließend die Data Crow-Serverdateien sowie Ihr Datenverzeichnis per SCP auf den VPS hoch. Stellen Sie eine Verbindung per SSH her, entpacken Sie die Archive und ordnen Sie sie wie folgt an:
~/datacrow_server
~/datacrow_server/data
Beginne Data Crow mit:
java -jar datacrow-server.jar -userdir:./data -hostname: -webserverport:8080 -port:9000 -imageserverport:8082 -apiserverport:8081
Um den Server nach Ihrer Abmeldung am Laufen zu halten, verwenden Sie tmux: eine tmux-Sitzung starten, den Startbefehl ausführen und dann abkoppeln mit Strg+B gefolgt von D. Der Server läuft weiterhin im Hintergrund.
Derzeit ist Data Crow unter einer Adresse wie http://<your-ip>:8080 — funktional, aber unsicher.
HTTPS mit Caddy hinzufügen
Um Data Crow über HTTPS bereitzustellen, können Sie Folgendes verwenden: Kadie Als Reverse-Proxy übernimmt Caddy automatisch die Bereitstellung von SSL-Zertifikaten.
Schritt 1 — Eine DNS-Aufzeichnung hinzufügen
Hinzufügen Eine Schallplatte zu Ihrer DNS-Konfiguration, die auf die IP-Adresse Ihres VPS verweist. Zum Beispiel das Hinzufügen eines Eintrags mit dem Namen mein zu datacrow.org gibt dir my.datacrow.org.
Schritt 2 — Caddy installieren
sudo apt update && sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf ‘https://dl.cloudsmith.io/public/caddy/stable/gpg.key’ | sudo gpg –dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf ‘https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt’ | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update && sudo apt install caddy
Schritt 3 – Caddyfile konfigurieren
my.datacrow.org {
reverse_proxy localhost:8080
}
my.datacrow.org:8083 {
reverse_proxy localhost:8081
}
my.datacrow.org:8084 {
reverse_proxy localhost:8082
}
Dies bildet die Webschnittstelle, den API-Server und den Bilderserver jeweils über Caddy ab.
Schritt 4 – Starten Sie Data Crow mit Adressüberschreibungen
Da die API und der Bildserver nun über Caddy auf unterschiedlichen externen Ports bereitgestellt werden, müssen der Data Crow die öffentlich zugänglichen Adressen mitgeteilt werden. Fügen Sie Ihrem Startbefehl die folgenden Parameter hinzu:
-apiserverport:8081 -api_address_overrule:https://my.datacrow.org:8083/datacrow-api/api -imageserverport:8082 -imageserver_address_overrule:https://my.datacrow.org:8084
Caddy leitet eingehende Anfragen an den Ports 8083 und 8084 transparent an die internen Ports 8081 und 8082 weiter. Das Ergebnis ist eine übersichtliche, HTTPS-gesicherte Adresse für Ihre Data Crow-Instanz.