Etherpad-lite インストール方法とCentOS6での注意点
これは何?
- Etherpad-liteの紹介
- Etherpad-liteのインストール方法概要
- CentOS6に最新版を入れるときの注意点
Etherpad-lite とは
- ドキュメントの同時編集ツールです。
- node.js, express, WebSocket(socket.io)あたりをつかっているようです。
- この辺の勉強にはいいのではないでしょうか?
参考URL
- 公式サイト http://etherpad.org/
- Github https://github.com/ether/etherpad-lite
- qiita内の記事 https://qiita.com/tags/etherpad-lite
以下で利用したバージョン
-
Etherpad 1.6.5
-
nvm 0.33.1
-
node 8.11.1
-
CentOS7の場合
- Apache 2.4.6
- MariaDB 5.5.56
-
CentOS6の場合
- Apache 2.2.15
- MySQL 5.1.73
インストール方法
-
詳しくは上記のURLを参照してください。さしてむずかしくはありません。
-
詳細はいろんな方が紹介されていますので以下は概要のみ。
-
ちょっと使い勝手を試したいというだけならdockerでサクッと動くのが用意されているようです。
- ここを見てください。https://github.com/ether/etherpad-docker
- こちらも参考になると思います。
https://qiita.com/nihongi/items/04f0ad4f7f3301bd40cc
-
インストール方法 概要
-
nvm, node.js, etherpad と順にインストールでとりあえず動きます。
-
setting.jsonで管理画面に入るためのアカウント設定をしてください。
-
その後は必要に応じて下記を実施。
-
SSL化(リバースプロキシ)
-
MySQL利用
-
サービス化
-
プラグイン導入 管理画面から簡単に導入できます。
CentOS6の場合の注意点
-
CentOS7ではEtherpad-lite最新版インストールにさして問題はありません。
-
CentOS6の場合、若干の注意が必要です。
-
nvmの導入
-
CentOS6のgitのバージョンが古く、nvmの最新版では中で使っているgitコマンドのオプションがないといって怒られます。v0.32.1あたりを使いましょう。
-
nvmを使わず、software collectionのnodeを使うと、Etherpad-liteは一見、うまく入りますが、管理画面からプラグイン導入しようとするとこけるようです。nvmでバージョンを縛って使う方が吉です。
-
MySQL化
-
Etherpad-liteではMySQL5.5以降の対応のutf8mb4が使われているため、CentOS6でMySQL5.1とかの場合、使えません。
- settings.json, src/node_modules/ueberdb2/mysql_db.js
にべた書きされているSQLを編集しutf8にすると動きます。
- settings.json, src/node_modules/ueberdb2/mysql_db.js
-
Apacheでのリバースプロキシ化
- CentOS6でApache2.2の場合、websocketに対応していないのでwebsocketで本来通信するところもHTTPS通信になるようです。(polingになるみたい)
- 参考:https://qiita.com/yuba/items/00fc1892b296fb7b8de9 CentOS7のApache2.4ではWebSocketに対応しているらしい。
- WebSocketにならないとEtherpad-liteを使っている旨味がなさそうなのでリバースプロキシにつかうApacheは注意が必要です。
- CentOS6でApache2.2の場合、websocketに対応していないのでwebsocketで本来通信するところもHTTPS通信になるようです。(polingになるみたい)
最後に
- なんだかんだ面倒なのでCentOS7をおすすめします。
- 次回はAPI周りをいじってみたいと思います。