Edited at

AWS の Ubuntu 16.04 で Etherpad as a service

More than 1 year has passed since last update.

AWS上でEtherpadを動かし、外からアクセスするようにできるまでのメモ書き。

DBはmysqlを使用。pluginはテーブルと画像挿入のをインストール。

前準備

AWS上のUbuntuパスワード変更

http://d.hatena.ne.jp/thata/20101116/1289890621

nodesインストール(次のに含まれているから不要?)

http://qiita.com/yuji_azama/items/45c0b413453534dba291

Ubuntu 16.04 に Etherpad をインストール

(コマンドを入力したら実行できる状態まで)

https://linuxconfig.org/install-etherpad-web-based-real-time-collaborative-editor-on-ubuntu-16-04-linux

起動時サービス

(サーバ起動時に自動でEtherpadが起動できるようにする)

http://pangency.hatenablog.com/entry/2015/05/08/111025

script の中身は

#! /bin/sh

case "$1" in
start)
/opt/etherpad/bin/run.sh
;;
esac

exit 0

とします。

ドメイン設定

https://ja.amimoto-ami.com/2013/11/29/elastic-ip-and-route-53/

nginxをリバースプロキシサーバとして使う。

(nodejs は80番ポートで起動できない?)

以下、Ethepadのデフォルトポートは9001 だが、settings.jsでポートを8080に変えた時の例。

upstream web-nodejs {

server localhost:8080;
}
server {
listen 80;
server_name etherpad.dslabgroup.com;

location / {
proxy_pass http://web-nodejs/;
}
}

外からは80番ポートでアクセスするので、AWSのセキュリティの設定は、80番ポートに外からアクセスできるようにしていればいい。

nginx enableする (サーバ起動時にnginx起動)

https://www.digitalocean.com/community/tutorials/how-to-configure-a-linux-service-to-start-automatically-after-a-crash-or-reboot-part-1-practical-examples

plugins

https://static.etherpad.org/plugins.html # ここにPlugin一覧がある

https://help.ubuntu.com/community/Etherpad-liteInstallation#Plugins

cd /opt/etherpad-lite

npm install ep_tables2
npm install ep_copy_paste_images
# AWSでインスタンス再起動する
# (上記で自動でrun.shをするようにした場合の、サービスだけの再起動方法不明。。)

mysql 設定

デフォルトではjs製のDB DirtyDBを使うようになっている。データ毎(?)の容量の上限が1M?らしいので、mysqlに変える。

下記設定だけを行うと、create tableなどはetherpad 起動時に自動で行われる。

https://github.com/ether/etherpad-lite/wiki/How-to-use-Etherpad-Lite-with-MySQL

https://help.ubuntu.com/community/Etherpad-liteInstallation