GNU/Linux >> Linux の 問題 >  >> Ubuntu

Turtlサーバー(Evernoteの代替)をUbuntu16.04にインストールする方法

Turtlは、安全で暗号化されたEvernoteの代替品です。これは、メモを取ったり、Webサイトをブックマークしたり、ドキュメントを保存したり、同僚とパスワードを共有したりできるオープンソースアプリケーションです。 Turtlを使用すると、プライベートな場所ですべてのデータを管理できます。 turtlクライアントとturtlサーバーアプリケーションのソースコードはgithubで入手でき、サーバーに手動でデプロイできます。

このチュートリアルでは、Ubuntu16.04にTurtlサーバーをインストールして構成する方法を段階的に説明します。 TurtlサーバーはCommonLispで記述されているため、システムにCommonLispとQuickLispをインストールする必要があります。このチュートリアルでは、UbuntuシステムへのLibuvのインストールや、Turtlデータストア用のRethinkDBのインストールなどについても説明します。

前提条件

  • Ubuntu 16.04
  • root権限

私たちが行うこと

  1. 依存関係のインストール
  2. Ubuntu16.04にLibuvをインストールする
  3. RethinkDBのインストールと構成
  4. CommonLispをインストールする
  5. Quicklispをインストールする
  6. Turtlサーバーをダウンロードしてインストールする
  7. Turtlサーバーをサービスとして実行する
  8. ApacheをTurtlのリバースプロキシとしてインストールして設定します
  9. テスト
ステップ1-依存関係をインストールする

Ubuntuサーバーリポジトリを更新してから、システムを更新します。

sudo apt update
sudo apt upgrade

次に、以下のaptコマンドを使用して、必要なパッケージ(git、wget、automakeなど)をインストールします。

sudo apt install wget curl libtool subversion make automake git -y
ステップ2-Ubuntu16.04にLibuvをインストールします

Libuvは、非同期I/Oに焦点を合わせたマルチプラットフォームサポートライブラリです。このライブラリはTurtlサーバーに必要であり、手動でインストールします。

'/ usr / local / src'ディレクトリに移動し、wgetを使用してLibuv圧縮ファイルをダウンロードします。

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 libuv-v1.9.1.tar.gz

libuvディレクトリに移動します。

cd libuv-v1.9.1

次に、autotoolsを使用してLibuvライブラリをビルドします。以下のすべてのコマンドを実行します。

sh autogen.sh
./configure
make
make install

完了すると、次のような結果が得られます。

Libuvライブラリがシステムの「/usr/ local/lib」ディレクトリに追加されました。

ステップ3-RethinkDBをインストールする

RethinkDBはオープンソースの分散ドキュメント指向データベースであり、TurtlサーバーのデータストアはRethinkDBを使用しています。

このステップでは、独自の公式リポジトリからRethinkDBをインストールします。

RethinkDBリポジトリをシステムに追加します。

echo "deb http://download.rethinkdb.com/apt $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/rethinkdb.list

キーをダウンロードして追加します。

wget -qO- https://download.rethinkdb.com/apt/pubkey.gpg | sudo apt-key add -

Ubuntuリポジトリを更新し、以下のaptコマンドを使用してインストールします。

sudo apt update
sudo apt install rethinkdb -y

インストールが完了したら、デフォルトの構成を「/etc/rethinkdb/instances.d」ディレクトリにコピーします。

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

そして、rethinkdbサービスを再起動します。

systemctl restart rethinkdb
systemctl enable rethinkdb

RethinkDBがUbuntuシステムにインストールされています。以下のコマンドを使用して確認してください。

netstat -plntu

ステップ4-CommonLisp(CL)をインストールする

Common Lisp(CL)は、Lispプログラミング言語の方言であり、Lispファミリーのメンバーです。

このステップでは、Ubuntuシステムに「ClozureCommonLisp」を手動でインストールします。

'/ usr / local / src'ディレクトリに移動し、wgetコマンドを使用してLinux86/64ビット用の'ClozureCommonLisp'をダウンロードします。

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

「CommonLisp」圧縮ファイルを抽出して削除します。

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

そして、'ccl'ディレクトリを取得します。 'ccl'ディレクトリに移動し、'ccl64'binファイルを'/ usr / local/bin'ディレクトリにコピーします。

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

次に、「ccl64」コマンドを実行して、「CommonLisp」のインストールを確認します。

ccl64

そして、以下のような結果が得られることを確認してください。

「ClozureCommonlisp」がインストールされました。また、「ccl」シェルを終了する場合は、次のようにquitコマンドを入力します。

(quit)
ステップ5-Quicklispをインストールする

Quicklispは、CommonLispのライブラリマネージャーです。 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の「init」ファイルを追加して「asdf.lisp」をロードします。

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

完了したら、「ccl」シェルを終了します。

(quit)

そして、「quicklisp.lisp」ファイルと「asdf.lisp」ファイルを削除します。

rm -f asdf.lisp quicklisp.lisp

Quicklispは、「turtl」ユーザーの下でシステムにインストールされています。

ステップ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

そして、cclinitファイルを編集します。

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'行に、以下に示すようにローカルホストIPアドレスを追加します。

defvar *server-bind* "127.0.0.1"

保存して終了します。

すべての構成が完了したら、「ccl64」コマンドを使用してturtlサーバーを起動します。

ccl64

このコマンドはTurtlサーバーAPIをインストールし、完了すると次のような結果が得られます。

'Ctrl+c'を押して終了します。

Turtlサーバーは、ローカルIPアドレス「127.0.0.1」、ポート「8181」で実行されています。

サーバーの新しい端末を開き、以下のnetstatコマンドを使用して確認します。

netstat -plntu

そして、次のような結果が得られるはずです。

ステップ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/local/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サービスはUbuntuシステムでサービスとして実行されています。

ステップ8-Turtl用にApacheリバースプロキシを設定する

このチュートリアルでは、Apache/httpdリバースプロキシサーバーの下でTurtlサーバーを実行します。 TurtlサーバーはローカルIP「127.0.0.1」でポート「8181」で実行されています。次に、Apache2 Webサーバーをインストールし、Turtlサーバーのリバースプロキシとして構成します。

以下のaptコマンドを使用して、すべての依存関係でapache2をインストールします。

sudo apt install -y apache2 apache2-utils apache2-bin libxml2-dev

インストールが完了したら、次のコマンドを実行して、必要なプラグインを有効にします。

sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_ajp
sudo a2enmod rewrite
sudo a2enmod deflate
sudo a2enmod headers
sudo a2enmod proxy_balancer
sudo a2enmod proxy_connect
sudo a2enmod proxy_html
sudo a2enmod xml2enc

次に、Apache2 Webサーバーを再起動し、起動時に毎回起動できるようにします。

systemctl restart apache2
systemctl enable apache2

次に、「sites-available」ディレクトリの下に新しい構成ファイル「turtl.conf」を作成して、新しいturtl仮想ホストを追加します。

'/ etc / apache2 / sites-available'ディレクトリに移動し、vimを使用して新しいcconfiguration'turtl.conf'を作成します。

cd /etc/apache2/sites-available/
vim turtl.conf

以下に仮想ホスト構成を貼り付けます。

<VirtualHost *:80>

ServerName turtl.hakase-labs.co
ServerAdmin [email protected]

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

LogLevel info

CustomLog ${APACHE_LOG_DIR}/turtl.log combined

</VirtualHost>

保存して終了します。

次に、turtl仮想ホストをアクティブにして、構成を確認します。

a2ensite turtl
apachectl configtest

エラーが発生していないことを確認してから、apache2Webサーバーを再起動します。

systemctl restart apache2

netstatコマンドを使用してサービスを確認してください。

netstat -plntu

また、ポート80でApache Webサーバーを取得し、ポート「8181」で「127.0.0.1」でTurtlAPIサーバーを取得していることを確認してください。

ステップ9-テスト

turtlクライアントアプリケーションをダウンロードして開きます。

[アカウントの作成]をクリックします。

次に、[ログインを記憶します]ボタンをクリックします。

メールアドレスとパスワード、Turtlサーバーのドメイン名を入力します。

そして、[参加]ボタンをクリックします。

これで、新しいウィンドウが表示されます。[このステップをスキップ]ボタンをクリックしてください。

そして、空白のturtlダッシュボードが表示されます。新しいメモ、パスワード、ファイル、ブックマークなどを追加できます。

Ubuntu16.04へのTurtlサーバーのインストールが正常に完了しました。


Ubuntu
  1. Ubuntu18.04にMySQLをインストールする方法

  2. Ubuntu18.04にMinecraftサーバーをインストールする方法

  3. Ubuntu14.04サーバーにZimbra8.6をインストールする方法

  1. Ubuntu20.04にNginxをインストールする方法

  2. Ubuntu20.04にMariaDBをインストールする方法

  3. CentOS7にTurtlServerEvernoteAlternativeをインストールする方法

  1. Ubuntu14.04にVNCサーバーをインストールする方法

  2. Ubuntu15.04にOpenSIPSサーバーをインストールする方法

  3. Ubuntu16.04にConsulServerをインストールする方法