웹사이트 검색

Ubuntu 20.04에 RavenDB NoSQL 데이터베이스를 설치하는 방법


이 페이지에서

  1. 전제 조건
  2. 필수 종속성 설치\n
  3. RavenDB 설치
  4. RavenDB 구성
  5. RavenDB용 Systemd 서비스 파일 생성
  6. RavenDB 웹 인터페이스 액세스
  7. 결론

RavenDB는 .NET/Windows 플랫폼용으로 설계된 무료 오픈 소스 문서 지향 NoSQL 데이터베이스입니다. RavenDB는 여러 데이터베이스, 샤딩 또는 여러 서버에 걸친 데이터 분할을 지원합니다. 동일한 인스턴스에서 수백 또는 수천 개의 데이터베이스를 처리할 수 있습니다. RavenDB는 JSON을 사용하여 문서를 저장하고 스키마를 선언할 필요가 없으며 개발자가 보다 자연스럽게 데이터로 작업할 수 있도록 합니다.

이 튜토리얼에서는 Ubuntu 20.04 서버에 RavenDB를 설치하는 방법을 배웁니다.

전제 조건

  • Ubuntu 20.04를 실행하는 서버.\n
  • 루트 암호는 서버에 구성됩니다.\n

필수 종속성 설치

시작하기 전에 시스템에 NET Core 런타임을 설치해야 합니다. 먼저 다음 명령을 사용하여 패키지 저장소를 다운로드하고 설치합니다.

wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
dpkg -i packages-microsoft-prod.deb

다음 출력이 표시되어야 합니다.

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) ...

다음으로 다음 명령을 사용하여 저장소를 업데이트합니다.

apt-get install apt-transport-https -y
apt-get update -y

리포지토리가 업데이트되면 다음 명령을 사용하여 .Net Core 런타임을 설치합니다.

apt-get install aspnetcore-runtime-3.1 -y

설치가 완료되면 다음 단계로 진행할 수 있습니다.

레이븐DB 설치

먼저 다음 명령을 실행하여 최신 버전의 RavenDB를 다운로드합니다.

wget -O ravendb.tar.bz2 https://hibernatingrhinos.com/downloads/RavenDB%20for%20Linux%20x64/latest

다운로드가 완료되면 다음 명령을 사용하여 다운로드한 파일의 압축을 풉니다.

tar xvjf ravendb.tar.bz2

다음으로 다음 명령을 사용하여 RavenDB에 대한 적절한 권한을 부여합니다.

chmod -R 755 ~/RavenDB

다음으로 디렉터리를 RavenDB로 변경하고 아래와 같이 설정 스크립트를 실행합니다.

cd ~/RavenDB
./run.sh

다음 출력이 표시되어야 합니다.

./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.

이 시점에서 RavenDB가 시작되고 포트 43241에서 수신 대기합니다. 이제 CTRL + C를 눌러 종료합니다.

RavenDB 구성

기본적으로 RavenDB는 localhost에서만 액세스할 수 있습니다. 따라서 원격 호스트에서 액세스하도록 구성해야 합니다.

settings.json 파일을 편집하여 구성할 수 있습니다.

nano ~/RavenDB/Server/settings.json

다음 줄을 추가/수정합니다.

{
    "ServerUrl": "http://your-server-ip:8080",
    "Setup.Mode": "Initial",
    "DataDir": "RavenData",
    "Security.UnsecuredAccessAllowed": "PrivateNetwork"

}

완료되면 파일을 저장하고 닫습니다.

RavenDB용 Systemd 서비스 파일 생성

다음으로 RavenDB를 관리하기 위한 systemd 서비스 파일을 생성해야 합니다. 다음 명령으로 만들 수 있습니다.

nano /etc/systemd/system/ravendb.service

다음 줄을 추가합니다.

[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

파일을 저장하고 닫습니다. 그런 다음 다음 명령을 사용하여 systemd 데몬을 다시 로드합니다.

systemctl daemon-reload

그런 다음 RavenDB를 시작하고 다음 명령을 사용하여 시스템 재부팅 시 시작되도록 활성화합니다.

systemctl start ravendb
systemctl enable ravendb

이제 다음 명령을 사용하여 RavenDB의 상태를 확인할 수 있습니다.

systemctl status ravendb

다음 출력이 표시되어야 합니다.

? 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 ubunt4 run.sh[30871]: Starting shut down...
Aug 01 11:30:21 ubunt4 run.sh[30871]: Shutdown completed
Aug 01 11:30:21 ubunt4 run.sh[30871]: Restarting Server...
Aug 01 11:30:21 ubunt4 run.sh[30871]: Using GC in server concurrent mode retaining memory from the OS.
Aug 01 11:30:21 ubunt4 run.sh[30871]: Server available on: http://69.87.218.19:8080
Aug 01 11:30:21 ubunt4 run.sh[30871]: Tcp listening on 69.87.218.19:38888
Aug 01 11:30:21 ubunt4 run.sh[30871]: Server started, listening to requests...
Aug 01 11:30:21 ubunt4 run.sh[30871]: TIP: type 'help' to list the available commands.
Aug 01 11:30:21 ubunt4 run.sh[30871]: ravendb> End of standard input detected, switching to server mode...
Aug 01 11:30:21 ubunt4 run.sh[30871]: Running non-interactive.

이 시점에서 RavenDB가 시작되고 포트 8080에서 수신 대기합니다.

RavenDB 웹 인터페이스에 액세스

이제 웹 브라우저를 열고 URL http://your-server-ip:8080을 입력하십시오. 다음 화면이 표시됩니다.

라이센스 계약에 동의하려면 동의 버튼을 클릭하십시오. 다음 화면이 표시됩니다.

여기에는 RavenDB를 설정하는 세 가지 옵션이 있습니다. 보안되지 않음 옵션을 선택합니다. 다음 화면이 표시됩니다.

HTTP 포트, IP 주소를 제공하고 다음 버튼을 클릭합니다. 다음 화면이 표시됩니다.

서버 다시 시작을 클릭하여 시스템을 다시 시작하십시오. 다시 시작하면 아래와 같이 RavenDB 대시보드로 리디렉션됩니다.

CREATE DATABASE 버튼을 클릭합니다. 다음 화면이 표시됩니다.

데이터베이스 이름을 제공하고 만들기 버튼을 클릭합니다. 다음 화면에 새로 생성된 데이터베이스가 표시되어야 합니다.

결론

축하합니다! Ubuntu 20.04에 RavenDB를 성공적으로 설치했습니다. 이제 RavenDB 탐색을 시작하여 이에 익숙해질 수 있습니다. 궁금한 점이 있으면 언제든지 문의해 주세요.