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

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

Etherpadは、ライターがテキストドキュメントを同時に編集し、すべての編集をリアルタイムで監視できるようにするWebベースのリアルタイムオンラインエディターです。これはオープンソースであり、カスタマイズ可能であり、各作成者のテキストを独自の色で表示する機能があります。また、アプリケーションと統合してユーザーとグループを管理できるHTTPAPIも提供します。それはあなたがEtherpadで電子メール通知、ファイルアップロード、ビデオ通話を統合するのを助けるいくつかのプラグインを提供します。このチュートリアルでは、EtherpadWebベースのエディターをUbuntu20.04サーバーにインストールする方法を示します。

前提条件
  • Ubuntu20.04を実行しているサーバー。
  • サーバーIPで指定された有効なドメイン名。
  • ルートパスワードがサーバーに設定されます。
はじめに

開始する前に、システムパッケージを最新バージョンに更新する必要があります。次のコマンドを実行して更新できます:

apt-get update -y

すべてのパッケージが更新されたら、システムにいくつかの依存関係をインストールする必要があります。次のコマンドですべてをインストールできます:

apt-get install gnupg2 git unzip libssl-dev pkg-config gcc g++ make build-essential -y

すべてのパッケージがインストールされたら、次のステップに進むことができます。

MariaDBデータベースのインストールと構成

Etherpadは、MariaDBをデータベースバックエンドとして使用します。そのため、システムにMariaDBサーバーをインストールする必要があります。次のコマンドでインストールできます:

apt-get install mariadb-server -y

MariaDBをインストールした後、次のコマンドを使用してMariaDBシェルにログインします。

mysql

ログイン後、次のコマンドを使用してEtherpadのデータベースとユーザーを作成します。

MariaDB [(none)]> create database etherpad;
MariaDB [(none)]> grant all privileges on etherpad.* to [email protected] identified by 'password';

次に、特権をフラッシュし、次のコマンドでMariaDBを終了します。

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

この時点で、データベースはEtherpad用に構成されています。これで、次のステップに進むことができます。

Node.jsをインストール

EtherpadはNode.jsに基づいています。そのため、システムにNode.jsをインストールする必要があります。デフォルトでは、最新バージョンのNode.jsはUbuntu20.04標準リポジトリでは利用できません。そのため、Node.jsリポジトリをシステムに追加する必要があります。次のコマンドで追加できます:

curl -sL https://deb.nodesource.com/setup_14.x -o nodesource_setup.sh
bash nodesource_setup.sh

リポジトリが追加されたら、次のコマンドを使用してNode.jsをインストールします。

apt-get install nodejs -y

Node.jsをインストールした後、次のコマンドを使用して、インストールされているNode.jsのバージョンを確認します。

node -v

次の出力が得られるはずです:

v14.15.0

終了したら、次のステップに進むことができます。

Etherpadのインストールと構成

前に、Etherpadをインストールします。別のユーザーとしてEtherpadを実行することをお勧めします。次のコマンドを使用して、Etherpadの新しいユーザーを作成できます。

adduser --home /opt/etherpad --shell /bin/bash etherpad

以下に示すように、パスワードを設定するように求められます。

Adding user `etherpad' ...
Adding new group `etherpad' (1000) ...
Adding new user `etherpad' (1000) with group `etherpad' ...
Creating home directory `/opt/etherpad' ...
Copying files from `/etc/skel' ...
New password: 
Retype new password: 
passwd: password updated successfully
Changing the user information for etherpad
Enter the new value, or press ENTER for the default
	Full Name []: Hitesh       
	Room Number []: 1
	Work Phone []: 
	Home Phone []: 
	Other []: 
Is the information correct? [Y/n] Y

次に、次のコマンドを使用して、Etherpadホームディレクトリに適切な権限を付与します。

install -d -m 755 -o etherpad -g etherpad /opt/etherpad

次に、ユーザーをEtherpadに切り替え、次のコマンドを使用してGitリポジトリから最新バージョンのEtherpadをダウンロードします。

su - etherpad
git clone --branch master https://github.com/ether/etherpad-lite.git

次に、ディレクトリをダウンロードしたディレクトリに変更し、次のコマンドを使用してEtherpadを実行します。

cd etherpad-lite
bin/run.sh

これにより、すべての依存関係がインストールされ、Etherpadサーバーが起動します。サーバーが正常に起動すると、次の出力が表示されます。

[2020-11-11 06:46:44.783] [INFO] console - Your Etherpad version is 1.8.6 (2c8769a)
[2020-11-11 06:46:44.958] [INFO] console - You can access your Etherpad instance at http://0.0.0.0:9001/
[2020-11-11 06:46:44.958] [WARN] console - Admin username and password not set in settings.json.  To access admin please uncomment and edit 'users' in settings.json
[2020-11-11 06:46:44.958] [WARN] console - Etherpad is running in Development mode.  This mode is slower for users and less secure than production mode.  You should set the NODE_ENV environment variable to production by using: export NODE_ENV=production

次に、CTRL+Cを押してサーバーを停止します。次に、settings.jsonファイルを編集し、データベースと管理者の設定を定義する必要があります。

nano settings.json

次の行を削除します:

"dbType" : "dirty",
  "dbSettings" : {
                   "filename" : "var/dirty.db"
                 },

以下に示すようにMySQL設定を変更します:

  "dbType" : "mysql",
  "dbSettings" : {
    "user":     "etherpad",
    "host":     "localhost",
    "port":     3306,
    "password": "password",
    "database": "etherpad",
    "charset":  "utf8mb4"
  },

行trustProxyをtrueに変更します:

  "trustProxy": true,

管理者ユーザーのパスワードを定義します:

  "users": {
    "admin": {
      "password": "adminpassword",
      "is_admin": true
    },

ファイルを保存して閉じてから、次のコマンドを使用して必要な依存関係をインストールします。

./bin/installDeps.sh

すべての依存関係がインストールされたら、次のコマンドを使用してEtherpadユーザーを終了します。

exit

この時点で、Etherpadがインストールおよび構成されています。これで、次のステップに進むことができます。

Etherpad用のSystemdサービスファイルを作成する

次に、Etherpadサービスを管理するためのsystemdサービスファイルを作成する必要があります。次のコマンドで作成できます:

nano /etc/systemd/system/etherpad.service

次の行を追加します:

[Unit]
Description=Etherpad-lite, the collaborative editor.
After=syslog.target network.target

[Service]
Type=simple
User=etherpad
Group=etherpad
WorkingDirectory=/opt/etherpad/etherpad-lite
Environment=NODE_ENV=production

ExecStart=/usr/bin/node /opt/etherpad/etherpad-lite/src/node/server.js

Restart=always

[Install]
WantedBy=multi-user.target

ファイルを保存して閉じてから、次のコマンドを実行してsystemdデーモンをリロードします。

systemctl daemon-reload

次に、Etherpadサービスを開始し、次のコマンドを使用してシステムの再起動時に開始できるようにします。

systemctl start etherpad
systemctl enable etherpad

次のコマンドを使用して、Etherpadサービスのステータスを確認することもできます。

systemctl status etherpad

次の出力が表示されます。

? etherpad.service - Etherpad-lite, the collaborative editor.
     Loaded: loaded (/etc/systemd/system/etherpad.service; disabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-11-11 06:50:49 UTC; 4s ago
   Main PID: 12269 (node)
      Tasks: 13 (limit: 4691)
     Memory: 119.1M
     CGroup: /system.slice/etherpad.service
             ??12269 /usr/bin/node /opt/etherpad/etherpad-lite/src/node/server.js

Etherpad用にNginxを構成する

この時点で、Etherpadが起動し、ポート9001でリッスンします。次に、Etherpadにアクセスするために、Nginxをリバースプロキシとしてインストールして構成する必要があります。まず、次のコマンドを使用してNginxをインストールします。

apt-get install nginx -y

次に、次のコマンドを使用して、新しいNginx仮想ホスト構成ファイルを作成します。

nano /etc/nginx/sites-available/etherpad.conf

次の行を追加します:

upstream etherpad {
   server localhost:9001;
   keepalive 32;
}

server {
   listen 80;
   server_name etherpad.mydomain.com;

   location / {
       client_max_body_size 50M;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_http_version 1.1;
       proxy_pass http://etherpad;
   }
}

ファイルを保存して閉じてから、次のコマンドを使用してNginx仮想ホスト構成ファイルをアクティブ化します。

ln -s /etc/nginx/sites-available/etherpad.conf /etc/nginx/sites-enabled/

次に、次のコマンドを使用して、構文エラーがないかNginxを確認します。

nginx -t

次の出力が得られるはずです:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

次に、Nginxサービスを再起動して、変更を適用します。

systemctl restart nginx

次のコマンドを使用して、Nginxのステータスを確認することもできます。

systemctl status nginx

次の出力が得られるはずです:

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-11-11 06:53:44 UTC; 6s ago
       Docs: man:nginx(8)
    Process: 12984 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 12985 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 13001 (nginx)
      Tasks: 3 (limit: 4691)
     Memory: 3.5M
     CGroup: /system.slice/nginx.service
             ??13001 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??13002 nginx: worker process
             ??13003 nginx: worker process

Nov 11 06:53:44 ubuntu2004 systemd[1]: Starting A high performance web server and a reverse proxy server...
Nov 11 06:53:44 ubuntu2004 systemd[1]: Started A high performance web server and a reverse proxy server.
アクセスEtherpad

次に、Webブラウザーを開き、URL http://etherpad.mydomain.comを入力します。 。次のページにリダイレクトされます:

ページ名を入力して、 OKをクリックします ボタン。次のページにEtherpadダッシュボードが表示されます:

結論

おめでとう!これで、Ubuntu20.04サーバーにリバースプロキシとしてNginxを使用してEtherpadを正常にインストールおよび構成できました。実稼働環境でEtherpadを簡単に使用できます。ご不明な点がございましたら、お気軽にお問い合わせください。


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

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

  3. Ubuntu18.04にGoをインストールする方法

  1. UbuntuにOdooをインストールする方法

  2. UbuntuにMavenをインストールする方法

  3. UbuntuにWineをインストールする方法

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

  2. UbuntuにPuTTYをインストールする方法

  3. Ubuntu18.04にRubyをインストールする方法