Wie installiert man eine RavenDB NoSQL-Datenbank unter Ubuntu 20.04
RavenDB ist eine freie und quelloffene dokumentenorientierte NoSQL-Datenbank, die für die .NET/Windows-Plattform entwickelt wurde. RavenDB unterstützt mehrere Datenbanken, Sharing oder Partitionierung der Daten über mehrere Server. Es ist in der Lage, Hunderte oder Tausende von Datenbanken auf derselben Instanz zu verarbeiten. RavenDB verwendet JSON zum Speichern von Dokumenten und erfordert keine Deklaration eines Schemas und ermöglicht Entwicklern eine natürlichere Arbeit mit Daten.
In diesem Tutorial werden wir lernen, wie man RavenDB auf einem Ubuntu 20.04 Server installiert.
Voraussetzungen
- Ein Server, auf dem Ubuntu 20.04 läuft.
- Der Server ist mit einem Root-Passwort konfiguriert.
Erforderliche Abhängigkeiten installieren
Bevor Sie beginnen, müssen Sie die NET Core-Laufzeit in Ihrem System installieren. Laden Sie zunächst das Paket-Repository mit dem folgenden Befehl herunter und installieren Sie es:
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb dpkg -i packages-microsoft-prod.deb
Sie sollten die folgende Ausgabe erhalten:
Selecting previously unselected package packages-microsoft-prod. (Reading database ... 91134 files and directories currently installed.) Preparing to unpack packages-microsoft-prod.deb ... Unpacking packages-microsoft-prod (1.0-ubuntu20.04.1) ... Setting up packages-microsoft-prod (1.0-ubuntu20.04.1) ...
Aktualisieren Sie als nächstes das Repository mit dem folgenden Befehl:
apt-get install apt-transport-https -y apt-get update -y
Sobald das Repository aktualisiert ist, installieren Sie die .Net Core-Laufzeit mit dem folgenden Befehl:
apt-get install aspnetcore-runtime-3.1 -y
Sobald die Installation abgeschlossen ist, können Sie mit dem nächsten Schritt fortfahren.
RavenDB installieren
Laden Sie zunächst die neueste Version der RavenDB herunter, indem Sie den folgenden Befehl ausführen: Geben Sie Ihren Datenbanknamen ein und klicken Sie auf die Schaltfläche Erstellen:
wget -O ravendb.tar.bz2 https://hibernatingrhinos.com/downloads/RavenDB%20for%20Linux%20x64/latest
Sobald der Download abgeschlossen ist, extrahieren Sie die heruntergeladene Datei mit dem folgenden Befehl:
tar xvjf ravendb.tar.bz2
Als nächstes die ordnungsgemäße Erlaubnis für die RavenDB mit dem folgenden Befehl:
chmod -R 755 ~/RavenDB
Wechseln Sie als nächstes in das Verzeichnis RavenDB und führen Sie das Setup-Skript wie unten dargestellt aus:
cd ~/RavenDB ./run.sh
Sie sollten die folgende Ausgabe sehen:
./run.sh: line 24: xdg-open: command not found _____ _____ ____ | __ \ | __ \| _ \ | |__) |__ ___ _____ _ __ | | | | |_) | | _ // _` \ \ / / _ \ '_ \| | | | _ < | | \ \ (_| |\ V / __/ | | | |__| | |_) | |_| \_\__,_| \_/ \___|_| |_|_____/|____/ Safe by default, optimized for efficiency Build 50005, Version 5.0, SemVer 5.0.0, Commit a8d3f94 PID 23883, 64 bits, 2 Cores, Phys Mem 1.941 GBytes, Arch: X64 Source Code (git repo): https://github.com/ravendb/ravendb Built with love by Hibernating Rhinos and awesome contributors! +---------------------------------------------------------------+ Using GC in server concurrent mode retaining memory from the OS. Could not start browser: System.ComponentModel.Win32Exception (2): No such file or directory at System.Diagnostics.Process.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Boolean setCredentials, UInt32 userId, UInt32 groupId, UInt32[] groups, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd, Boolean usesTerminal, Boolean throwOnNoExec) at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo) at System.Diagnostics.Process.Start() at System.Diagnostics.Process.Start(ProcessStartInfo startInfo) at System.Diagnostics.Process.Start(String fileName, String arguments) at Raven.Server.Utils.Cli.BrowserHelper.OpenStudioInBrowser(String url, Action`1 onError) in C:\Builds\RavenDB-Stable-5.0\50005\src\Raven.Server\Utils\Cli\BrowserHelper.cs:line 26 Server available on: http://127.0.0.1:43241 Server started, listening to requests... TIP: type 'help' to list the available commands. Running non-interactive.
An diesem Punkt wird RavenDB gestartet und lauscht auf Port 43241. Drücken Sie jetzt CTRL + C, um den Vorgang zu beenden.
RavenDB konfigurieren
Standardmäßig ist die RavenDB nur vom Localhost aus zugänglich. Sie müssen sie also für den Zugriff vom Remote-Host aus konfigurieren.
Sie können ihn konfigurieren, indem Sie die Datei settings.json bearbeiten:
nano ~/RavenDB/Server/settings.json
Fügen Sie die folgenden Zeilen hinzu / ändern Sie sie:
{ "ServerUrl": "http://your-server-ip:8080", "Setup.Mode": "Initial", "DataDir": "RavenData", "Security.UnsecuredAccessAllowed": "PrivateNetwork" }
Speichern und schließen Sie die Datei, wenn Sie fertig sind.
Erstellen Sie eine Systemd-Service-Datei für RavenDB
Als nÃ?chstes mÃ?ssen Sie eine Systemdatei zur Verwaltung der RavenDB erstellen. Sie können sie mit dem folgenden Befehl erstellen:
nano /etc/systemd/system/ravendb.service
Fügen Sie die folgenden Zeilen hinzu:
[Unit] Description=RavenDB v4.0 After=network.target [Service] LimitCORE=infinity LimitNOFILE=65536 LimitRSS=infinity LimitAS=infinity User=root Restart=on-failure Type=simple ExecStart=/root/RavenDB/run.sh [Install] WantedBy=multi-user.target
Sichern und schließen Sie die Datei. Laden Sie dann den systemd-Daemon mit folgendem Befehl neu:
systemctl daemon-reload
Starten Sie als nächstes die RavenDB und ermöglichen Sie ihr, beim Systemneustart mit dem folgenden Befehl zu starten:
systemctl start ravendb systemctl enable ravendb
Sie können nun den Status der RavenDB mit dem folgenden Befehl überprüfen:
systemctl status ravendb
Sie sollten die folgende Ausgabe erhalten:
? ravendb.service - RavenDB v4.0 Loaded: loaded (/etc/systemd/system/ravendb.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2020-08-01 11:25:12 UTC; 7min ago Main PID: 30833 (run.sh) Tasks: 32 (limit: 2353) Memory: 157.0M CGroup: /system.slice/ravendb.service ??30833 /bin/bash /root/RavenDB/run.sh ??30871 ./Raven.Server --browser Aug 01 11:30:19 ubuntu2004 run.sh[30871]: Starting shut down... Aug 01 11:30:21 ubuntu2004 run.sh[30871]: Shutdown completed Aug 01 11:30:21 ubuntu2004 run.sh[30871]: Restarting Server... Aug 01 11:30:21 ubuntu2004 run.sh[30871]: Using GC in server concurrent mode retaining memory from the OS. Aug 01 11:30:21 ubuntu2004 run.sh[30871]: Server available on: http://69.87.218.19:8080 Aug 01 11:30:21 ubuntu2004 run.sh[30871]: Tcp listening on 69.87.218.19:38888 Aug 01 11:30:21 ubuntu2004 run.sh[30871]: Server started, listening to requests... Aug 01 11:30:21 ubuntu2004 run.sh[30871]: TIP: type 'help' to list the available commands. Aug 01 11:30:21 ubuntu2004 run.sh[30871]: ravendb> End of standard input detected, switching to server mode... Aug 01 11:30:21 ubuntu2004 run.sh[30871]: Running non-interactive.
An diesem Punkt wird RavenDB gestartet und lauscht auf Port 8080.
Zugriff auf die RavenDB-Webschnittstelle
Öffnen Sie nun Ihren Webbrowser und geben Sie die URL http://your-server-ip:8080 ein. Sie sollten den folgenden Bildschirm sehen:
Klicken Sie auf die Schaltfläche Akzeptieren, um die Lizenzvereinbarung zu akzeptieren. Sie sollten den folgenden Bildschirm sehen:
Hier gibt es drei Optionen zur Einrichtung der RavenDB. Wählen Sie die Option Ungesichert. Sie sollten den folgenden Bildschirm sehen:
Geben Sie den HTTP-Port und die IP-Adresse an und klicken Sie auf die Schaltfläche Weiter. Sie sollten den folgenden Bildschirm sehen:
Klicken Sie auf den Restart-Server, um Ihr System neu zu starten. Nach erfolgreichem Neustart werden Sie zum RavenDB-Dashboard wie unten dargestellt weitergeleitet:
Klicken Sie auf die Schaltfläche DATENBANK ERSTELLEN. Sie sollten das folgende Bild sehen:
Geben Sie Ihren Datenbanknamen ein und klicken Sie auf die Schaltfläche Create. Auf dem folgenden Bildschirm sollten Sie Ihre neu erstellte Datenbank sehen:
Schlussfolgerung
Herzlichen Glückwunsch! Sie haben RavenDB erfolgreich unter Ubuntu 20.04 installiert. Sie können nun mit der Erkundung von RavenDB beginnen, um sich mit RavenDB vertraut zu machen. Zögern Sie nicht, mich zu fragen, wenn Sie Fragen haben.