웹사이트 검색

CentOS 7에 Turtl Server Evernote 대안을 설치하는 방법


이 페이지에서

  1. 전제 조건
  2. 우리가 할 일\n
  3. 1단계 - 개발 도구 설치
  4. 2단계 - CentOS 7에 Libuv 설치
  5. 3단계 - RethinkDB 설치 및 구성
  6. 4단계 - Common Lisp 설치
  7. 5단계 - Quicklisp 설치
  8. 6단계 - Turtl 서버 다운로드 및 설치
  9. 7단계 - Turtl 서버를 서비스로 실행\n
  10. 8단계 - Apache/httpd를 Turtl용 리버스 프록시로 설치 및 구성\n
  11. 9단계 - 테스트
  12. 참조

Turtl은 안전하고 암호화된 Evernote 대안입니다. 메모를 작성하고, 웹사이트를 북마크하고, 문서를 저장하고, 동료와 암호를 공유하는 등의 작업을 수행할 수 있는 오픈 소스 응용 프로그램입니다. Turtl을 사용하면 비공개 장소에서 모든 데이터를 제어할 수 있습니다. turtl 클라이언트 및 turtl 서버 응용 프로그램의 소스 코드는 github에서 사용할 수 있습니다. 서버에 수동으로 배포할 수 있습니다.

이 튜토리얼에서는 CentOS 7에서 Turtl 서버를 설치하고 구성하는 방법을 단계별로 보여줍니다. Turtl 서버는 Common Lisp로 작성되었으므로 시스템에 Common Lisp 및 QuickLisp를 설치해야 합니다. 이 튜토리얼에서는 CentOS 7 시스템에 Libuv 설치 및 turtl 데이터 저장소용 RethinkDB 설치를 포함한 몇 가지 주제를 다룹니다.

전제 조건

  • 센트OS 7
  • 루트 권한\n

우리가 할 일

  1. 개발 도구 설치
  2. CentOS 7에 Libuv 설치
  3. RethinkDB 설치 및 구성
  4. Common Lisp 설치
  5. Quicklisp 설치
  6. Turtl 서버 다운로드 및 설치
  7. Turtl 서버를 서비스로 실행\n
  8. Apache를 Turtl용 리버스 프록시로 설치 및 구성\n
  9. 테스트

1단계 - 개발 도구 설치

이 가이드에서는 CentOS 시스템에 설치된 개발 도구 패키지가 필요합니다.

아래 yum 명령을 사용하여 개발 도구를 설치합니다.

sudo yum group install "Development Tools"

모든 개발 도구 패키지 설치를 기다립니다.

2단계 - CentOS 7에 Libuv 설치

Libuv는 비동기 I/O에 초점을 맞춘 다중 플랫폼 지원 라이브러리입니다. 이 라이브러리는 Turtl 서버에 필요하며 이 라이브러리를 수동으로 설치합니다.

Libuv를 시스템에 수동으로 설치하기 전에 openssl 및 openssl-devel을 설치해 보겠습니다.

yum -y install openssl openssl-devel

이제 /usr/local/src 디렉토리로 이동하고 wget을 사용하여 libuv.targz 파일을 다운로드합니다.

cd /usr/local/src
wget http://dist.libuv.org/dist/v1.9.1/libuv-v1.9.1.tar.gz

libuv.tar.gz를 추출하고 마스터를 제거하십시오.

tar -xf libuv-v1.9.1.tar.gz
rm -f libuv-v1.9.1.tar.gz

libuv 디렉토리로 이동합니다.

cd libuv-v1.9.1/

아래의 모든 명령을 실행하여 개발 도구를 사용하여 Libuv를 설치하십시오.

sh autogen.sh
./configure
make
make install

완료되면 다음 명령을 실행합니다.

sudo ldconfig

Libuv 라이브러리는 CentOS 7 시스템에 설치되었습니다.

3단계 - RethinkDB 설치 및 구성

RethinkDB는 오픈 소스 및 분산 문서 지향 데이터베이스이며 Turtl 서버는 RethinkDB를 데이터 저장소로 사용하고 있습니다.

이 단계에서는 자체 저장소에서 RethinkDB를 설치합니다.

시스템에 CentOS 7용 RethinkDB 리포지토리를 추가합니다.

sudo wget http://download.rethinkdb.com/centos/7/`uname -m`/rethinkdb.repo \
          -O /etc/yum.repos.d/rethinkdb.repo

RethinkDB 리포지토리가 추가되었습니다. 이제 다음과 같은 방법으로 yum 명령을 사용하여 설치합니다.

sudo yum -y install rethinkdb

설치가 완료되면 기본 구성을 /etc/rethinkdb/instances.d 디렉토리에 복사합니다.

cp /etc/rethinkdb/default.conf.sample /etc/rethinkdb/instances.d/default.conf

그리고 vim 편집기를 사용하여 RethinkDB용 새 서비스 파일을 만듭니다.

cd /etc/systemd/system
vim rethinkdb.service

다음 구성을 거기에 붙여넣으십시오.

# Automatically generated by systemd-sysv-generator

[Unit]
Documentation=man:systemd-sysv-generator(8)
SourcePath=/etc/init.d/rethinkdb
Description=LSB: This starts a set of rethinkdb server instances.
Before=multi-user.target
Before=multi-user.target
Before=multi-user.target
Before=graphical.target
Before=shutdown.target
After=remote-fs.target
Conflicts=shutdown.target

[Service]
Type=forking
Restart=no
TimeoutSec=5min
IgnoreSIGPIPE=no
KillMode=process
GuessMainPID=no
RemainAfterExit=yes
ExecStart=/etc/init.d/rethinkdb start
ExecStop=/etc/init.d/rethinkdb stop

이제 systemd 시스템을 다시 로드하고 RethinkDB 서비스를 시작합니다.

systemctl daemon-reload
systemctl start rethinkdb

RethinkDB는 이제 CentOS 7 시스템에 설치되어 실행됩니다.

다음 명령을 사용하여 확인하십시오.

systemctl status rethinkdb
netstat -plntu

그리고 아래와 같은 결과를 얻어야 합니다.

4단계 - Common Lisp 설치

CL(Common Lisp)은 Lisp 프로그래밍 언어의 방언입니다. Lisp 제품군의 구성원입니다. 이 단계에서는 Clozure Common Lisp를 CentOS 시스템에 수동으로 설치합니다.

/usr/local/src 디렉토리로 이동하고 wget 명령을 사용하여 Linux 86/64비트용 Clozure Common Lisp를 다운로드합니다.

cd /usr/local/src
wget https://github.com/Clozure/ccl/releases/download/v1.11.5/ccl-1.11.5-linuxx86.tar.gz

Clozure Common Lisp 압축 파일을 추출하고 마스터 파일을 제거합니다.

tar -xf ccl-1.11.5-linuxx86.tar.gz
rm -f ccl-1.11.5-linuxx86.tar.gz

그리고 당신은 ccl 디렉토리를 얻을 것입니다. ccl 디렉토리로 이동하여 ccl64 bin 파일을 /usr/bin 디렉토리에 복사합니다.

cd /usr/local/src/ccl
sudo cp scripts/ccl64 /usr/bin/

이제 ccl64 명령을 실행하여 Clozure Common Lisp 설치를 확인합니다.

ccl64

그리고 아래와 같이 결과가 나오는지 확인합니다.

이제 Clozure Common lisp가 설치되었습니다. 그리고 ccl 셸을 종료하려면 quit 명령을 입력합니다.

(quit)

5단계 - Quicklisp 설치

Quicklisp는 Common Lisp의 라이브러리 관리자입니다. turtl은 Quicklisp 시스템을 통해 모든 종속성을 로드하기 때문에 시스템에 Quicklisp를 설치해야 합니다.

Quicklisp를 설치하기 전에 turtl 설치를 위해 새 사용자를 추가하십시오.

useradd -m -s /bin/bash turtl
passwd turtl

이제 turtl 사용자로 로그인하십시오.

su - turtl

wget/curl 명령을 사용하여 quicklisp.lisp 및 asdf.lisp 파일을 다운로드합니다.

wget https://common-lisp.net/project/asdf/asdf.lisp
curl -O https://beta.quicklisp.org/quicklisp.lisp

이제 아래와 같이 ccl64 명령을 사용하여 quicklisp.lisp를 로드합니다.

ccl64 --load quicklisp.lisp

그러면 ccl 셸 명령줄이 표시됩니다. 아래 명령을 사용하여 Quicklisp를 설치합니다.

(quicklisp-quickstart:install)

이 명령은 Quicklisp에 대한 모든 종속성을 다운로드합니다. 완료되면 Quicklisp 초기화 파일을 추가하고 asdf.lisp를 로드합니다.

(ql:add-to-init-file)
(load (compile-file "asdf.lisp"))

완료되면 ccl 쉘을 종료합니다.

(quit)

그리고 quicklisp.lisp 및 asdf.lisp 파일을 제거합니다.

rm -f asdf.lisp quicklisp.lisp

퀴클립스가 설치되었습니다.

6단계 - Turtl 서버 다운로드 및 설치

이 단계에서는 위에서 생성한 turtl 사용자 아래에 Turtl을 설치합니다.

turtl 사용자로 로그인하고 git을 사용하여 turtl 소스 코드를 복제합니다.

su - turtl
git clone https://github.com/turtl/api.git

api 디렉토리로 이동하고 vim을 사용하여 새 파일 launch.lisp를 작성하십시오.

cd /home/turtl/api
vim launch.lisp

다음 구성을 거기에 붙여넣으십시오.

(pushnew "./" asdf:*central-registry* :test #'equal)
(load "start")

저장 및 종료.

다음으로 turtl에 대한 몇 가지 종속성을 설치해야 합니다. quicklisp 디렉터리로 이동하여 모든 종속성을 복제합니다.

cd ~/quicklisp/local-projects

아래의 모든 명령을 실행하여 모든 종속성을 다운로드합니다.

git clone git://github.com/orthecreedence/cl-hash-util
git clone git://github.com/orthecreedence/vom
git clone git://github.com/orthecreedence/cl-async
git clone git://github.com/orthecreedence/cffi
git clone git://github.com/orthecreedence/wookie
git clone git://github.com/orthecreedence/cl-rethinkdb
git clone git://github.com/orthecreedence/cl-libuv
git clone git://github.com/orthecreedence/drakma-async
git clone https://github.com/Inaimathi/cl-cwd.git

그리고 ccl init 파일을 수정합니다.

vim /home/turtl/.ccl-init.lisp

줄 끝으로 이동하여 다음 구성을 붙여넣습니다.

(cwd "/home/turtl/api")
(load "/home/turtl/api/launch")

저장 및 종료.

이제 기본 turtl 구성 config.lisp를 복사하고 vim을 사용하여 편집합니다.

cp /home/turtl/api/config/config.default.lisp /home/turtl/api/config/config.lisp
vim /home/turtl/api/config/config.lisp

server-bind 줄에 아래와 같이 localhost IP 주소를 추가합니다.

defvar *server-bind* "127.0.0.1"

저장 및 종료.

모든 구성이 완료되면 ccl64 명령을 사용하여 turtl 서버를 시작합니다.

ccl64

이 명령은 Turtl 서버 API를 설치하고 완료되면 아래와 같은 결과를 얻습니다.

종료하려면 Ctrl + c를 누르고 (종료)를 입력합니다.

7단계 - Turtl 서버를 서비스로 실행

Turtl 서버 API는 turtl 사용자 아래에 설치되었습니다. 이 자습서에서는 turtl을 서비스로 실행합니다.

/lib/systemd/system 디렉터리로 이동하고 vim을 사용하여 새 turtl.service 파일을 만듭니다.

cd /lib/systemd/system/
vim turtl.service

다음 turtl 서비스 구성을 거기에 붙여넣습니다.

 [Unit]
Description=turtl_service
After=network.target mysql.service postgresql.service

[Service]
User=turtl
ExecStart=/usr/bin/ccl64
Restart=always

[Install]
WantedBy=multi-user.target

저장 및 종료.

이제 systemd를 다시 로드하고 systemctl 명령을 사용하여 turtl 서비스를 시작합니다.

systemctl daemon-reload
systemctl start turtl

부팅 시간에 turtl 서비스를 추가하고 turtl 서비스 상태를 확인합니다.

systemctl enable turtl
systemctl status turtl

아래와 같은 결과를 얻어야 합니다.

turtl 서비스는 이제 CentOS 7 시스템에서 서비스로 실행됩니다.

8단계 - Apache/httpd를 Turtl용 리버스 프록시로 설치 및 구성

이 자습서에서는 Apache/httpd 리버스 프록시 서버에서 Turtl 서버를 실행합니다. Turtl 서버는 이제 포트 8181을 사용하는 로컬 IP 127.0.0.1에서 실행 중이며 이제 Apache2 웹 서버를 설치하고 Turtl 서버의 역방향 프록시로 구성합니다.

아래 yum 명령을 사용하여 모든 종속성과 함께 apache2를 설치합니다.

yum -y install httpd mod_proxy_html

설치가 완료되면 Turtl에 대한 새 가상 호스트 파일을 추가하십시오.

/etc/httpd/conf.d 디렉토리로 이동하여 새 가상 호스트 파일 turtl.conf를 만듭니다.

cd /etc/httpd/conf.d/
vim turtl.conf

다음 가상 호스트 구성을 거기에 붙여넣으십시오.

<VirtualHost *:80>

ServerName turtl.hakase-labs.co
ServerAdmin

ProxyPreserveHost On
ProxyRequests off
RewriteEngine On

<Proxy http://localhost:8181>
Order deny,allow
Allow from all
</Proxy>

ProxyPass / http://127.0.0.1:8181/ Keepalive=On timeout=1600
ProxyPassReverse / http://127.0.0.1:8181/

LogLevel info

CustomLog /var/log/httpd/turtl.log combined

</VirtualHost>

저장 및 종료.

이제 Apache 구성을 확인하고 오류가 없는지 확인하십시오.

apachectl configtest

이제 httpd 서비스를 다시 시작하고 시스템 부팅 시마다 실행되도록 활성화합니다.

systemctl restart httpd
systemctl enable httpd

Apache2/httpd 웹 서버는 CentOS 7 시스템에 설치되었으며 포트 8181에서 Turtl 애플리케이션의 리버스 프록시 역할을 합니다.

아래 netstat 명령을 사용하여 확인하십시오.

netstat -plntu

9단계 - 테스트

turtl 클라이언트 응용 프로그램을 다운로드하고 엽니다.

계정 만들기 링크를 클릭합니다.

이제 내 로그인을 기억하겠습니다 버튼을 클릭합니다.

비밀번호와 Turtl 서버 도메인 이름이 포함된 이메일 주소를 입력합니다.

그리고 회원가입 버튼을 클릭합니다.

이제 새 창이 나타납니다. 이 단계 건너뛰기 버튼을 클릭하세요.

그러면 빈 turtl 대시보드가 표시됩니다. 여기에서 새 메모, 비밀번호, 파일, 책갈피 등을 추가할 수 있습니다.

CentOS 7 시스템에 Turtl 서버 설치가 성공적으로 완료되었습니다.

참조

  • https://community.nethserver.org/