Crowi-Plus の構築
参考
・最強のWikiと呼び声の高い「Crowi」を、更に最強にした話
・crowi-plusを試してみた
・Markdownで書けるWiki - Crowi
・Ubuntuに最新のNode.jsを難なくインストールする
環境
- OS: Ubuntu 16.04.2 LTS Server
Ubutnu のインストール後の設定
とりあえず Ubuntu を最新にする。
hoge@hage:~$ sudo apt update
hoge@hage:~$ sudo apt dist-upgrade
crowi-plus のインストール
Ubuntuに最新のNode.jsを難なくインストールする を参考にさせていただいきました。
node.jp
nodejs, npm をパッケージからインストール
hoge@hage:~$ sudo apt-get install -y nodejs npm
次に npm を使って n package を導入
hoge@hage:~$ sudo npm cache clean
hoge@hage:~$ sudo npm install n -g
n package を使って node をインストール
hoge@hage:~$ sudo n stable
hoge@hage:~$ sudo ln -sf /usr/local/bin/node /usr/bin/node
最初に入れた nodejs, npm は古いのでアンインストール
hoge@hage:~$ sudo apt-get purge -y nodejs npm
hoge@hage:~$ sudo apt-get autoremove -y
動作するか、最新バージョンかどうかを確認する
hoge@hage:~$ node -v
v8.0.0
hoge@hage:~$ npm -v
5.0.0
2017/06/10 時点の安定板のバージョンは v6.11.0 なので、ダウングレード
hoge@hage:~$ sudo n 6.11.0
hoge@hage:~$ node -v
v6.11.0
hoge@hage:~$ npm -v
3.10.10
yarn
npm を使って yarn をインストールする
hoge@hage:~$ sudo npm install -g yarn
MongoDB
参考
・Install MongoDB Community Edition on Ubuntu
・How to Install MongoDB on Ubuntu 16.04
hoge@hage:~$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
hoge@hage:~$ echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
hoge@hage:~$ sudo apt-get update
hoge@hage:~$ sudo apt-get install -y mongodb-org
mongodb のデーモン化の為の設定
hoge@hage:~$ sudo vi /etc/systemd/system/mongodb.service
以下の内容を設定
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
mongodb をOS起動時にデーモンで動かす様に設定
hoge@hage:~$ sudo systemctl start mongodb
hoge@hage:~$ sudo systemctl enable mongodb
crowi-plus
/opt にインストールする場合
hoge@hage:~$ cd /opt/
hoge@hage:/opt$ sudo git clone https://github.com/weseek/crowi-plus.git
プラグインのインストール
hoge@hage:/opt$ cd crowi-plus
hoge@hage:/opt/crowi-plus$ sudo npm install --save crowi-plugin-lsx
hoge@hage:/opt/crowi-plus$ sudo npm install --save crowi-plugin-pukiwiki-like-linker
追加パッケージ取得
hoge@hage:/opt/crowi-plus$ sudo yarn
構築・動作確認
hoge@hage:/opt/crowi-plus$ sudo npm start
Ctl+c を押して終了させる。
自動起動の設定
環境変数ファイル crowi-plus を作成
hoge@hage:/opt/crowi-plus$ sudo vi crowi-plus
以下の内容を設定
FILE_UPLOAD=local
起動用に crowi-plus.sh を作成
hoge@hage:/opt/crowi-plus$ sudo vi crowi-plus.sh
以下の内容を設定
#! /usr/bin/sh
cd /opt/crowi-plus/
npm run server:prod
自動起動の為に crowi-plus.service を作成
hoge@hage:/opt/crowi-plus$ sudo vi /etc/systemd/system/crowi-plus.service
以下の内容を設定
[Unit]
Description=Crowi - The Simple & Powerful Communication Tool Based on Wiki
After=network.target mongod.service
[Service]
WorkingDirectory=/opt/crowi-plus
EnvironmentFile=/opt/crowi-plus/crowi-plus
ExecStart=/bin/bash /opt/crowi-plus/crowi-plus.sh
[Install]
WantedBy=multi-user.target
起動設定
hoge@hage:/opt/crowi-plus$ sudo systemctl enable crowi-plus
再起動・動作確認
hoge@hage:/opt/crowi-plus$ sudo shutdown -r now
再起動後、[server_ip:3000]にアクセスし、管理者作成画面が出れば成功!