RavenDB est une base de données NoSQL orientée document gratuite et open-source conçue pour la plate-forme .NET/Windows. RavenDB prend en charge plusieurs bases de données, le partitionnement ou le partitionnement des données sur plusieurs serveurs. Il a la capacité de gérer des centaines ou des milliers de bases de données sur la même instance. RavenDB utilise JSON pour stocker des documents et ne nécessite pas la déclaration d'un schéma et permet aux développeurs de travailler avec des données plus naturellement.
Dans ce tutoriel, nous allons apprendre à installer RavenDB sur le serveur Ubuntu 20.04.
Prérequis
- Un serveur exécutant Ubuntu 20.04.
- Un mot de passe root est configuré sur le serveur.
Installer les dépendances requises
Avant de commencer, vous devrez installer le runtime NET Core sur votre système. Tout d'abord, téléchargez et installez le référentiel de packages avec la commande suivante :
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
dpkg -i packages-microsoft-prod.deb
Vous devriez obtenir le résultat suivant :
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) ...
Ensuite, mettez à jour le référentiel avec la commande suivante :
apt-get install apt-transport-https -y
apt-get update -y
Une fois le référentiel mis à jour, installez le runtime .Net Core avec la commande suivante :
apt-get install aspnetcore-runtime-3.1 -y
Une fois l'installation terminée, vous pouvez passer à l'étape suivante.
Installer RavenDB
Tout d'abord, téléchargez la dernière version de RavenDB en exécutant la commande suivante :
wget -O ravendb.tar.bz2 https://hibernatingrhinos.com/downloads/RavenDB%20for%20Linux%20x64/latest
Une fois le téléchargement terminé, extrayez le fichier téléchargé avec la commande suivante :
tar xvjf ravendb.tar.bz2
Ensuite, une autorisation appropriée à RavenDB avec la commande suivante :
chmod -R 755 ~/RavenDB
Ensuite, changez le répertoire en RavenDB et exécutez le script de configuration comme indiqué ci-dessous :
cd ~/RavenDB
./run.sh
Vous devriez voir le résultat suivant :
./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.
À ce stade, RavenDB est démarré et écoute sur le port 43241. Maintenant, appuyez sur CTRL + C pour quitter.
Configurer RavenDB
Par défaut, RavenDB n'est accessible qu'à partir de l'hôte local. Vous devrez donc le configurer pour y accéder depuis l'hôte distant.
Vous pouvez le configurer en éditant le fichier settings.json :
nano ~/RavenDB/Server/settings.json
Ajoutez/Modifiez les lignes suivantes :
{ "ServerUrl": "http://your-server-ip:8080", "Setup.Mode": "Initial", "DataDir": "RavenData", "Security.UnsecuredAccessAllowed": "PrivateNetwork" }
Enregistrez et fermez le fichier lorsque vous avez terminé.
Créer un fichier de service Systemd pour RavenDB
Ensuite, vous devrez créer un fichier de service systemd pour gérer RavenDB. Vous pouvez le créer avec la commande suivante :
nano /etc/systemd/system/ravendb.service
Ajoutez les lignes suivantes :
[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
Enregistrez et fermez le fichier. Ensuite, rechargez le démon systemd avec la commande suivante :
systemctl daemon-reload
Ensuite, démarrez RavenDB et activez-le pour qu'il démarre au redémarrage du système avec la commande suivante :
systemctl start ravendb
systemctl enable ravendb
Vous pouvez maintenant vérifier l'état de RavenDB avec la commande suivante :
systemctl status ravendb
Vous devriez obtenir le résultat suivant :
? 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.
À ce stade, RavenDB est démarré et écoute sur le port 8080.
Accéder à l'interface Web de RavenDB
Maintenant, ouvrez votre navigateur Web et tapez l'URL http://your-server-ip:8080. Vous devriez voir l'écran suivant :
Cliquez sur Accepter bouton pour accepter le contrat de licence. Vous devriez voir l'écran suivant :
Ici, il y a trois options pour configurer RavenDB. Sélectionnez Non sécurisé option. Vous devriez voir l'écran suivant :
Indiquez le port HTTP, l'adresse IP et cliquez sur Suivant bouton. Vous devriez voir l'écran suivant :
Cliquez sur Redémarrer serveur pour redémarrer votre système. Après un redémarrage réussi, vous serez redirigé vers le tableau de bord RavenDB comme indiqué ci-dessous :
Cliquez sur CRÉER UNE BASE DE DONNÉES bouton. Vous devriez voir l'écran suivant :
Indiquez le nom de votre base de données et cliquez sur Créer bouton. Vous devriez voir votre base de données nouvellement créée dans l'écran suivant :
Conclusion
Toutes nos félicitations! vous avez installé avec succès RavenDB sur Ubuntu 20.04. Vous pouvez maintenant commencer à explorer RavenDB pour vous familiariser avec celui-ci. N'hésitez pas à me demander si vous avez des questions.