Crowiのセットアップ方法


CentOS7にCrowi1.6をインストールする方法

検証環境

  • CentOS 7.4 x64 (Minimal Install)

セットアップ前のシステム状態

# systemctl list-unit-files --type=service | grep enabled
[email protected]                               enabled 
chronyd.service                               enabled 
crond.service                                 enabled 
dbus-org.freedesktop.NetworkManager.service   enabled 
dbus-org.freedesktop.nm-dispatcher.service    enabled 
[email protected]                                enabled 
irqbalance.service                            enabled 
lvm2-monitor.service                          enabled 
microcode.service                             enabled 
NetworkManager-dispatcher.service             enabled 
NetworkManager.service                        enabled 
rsyslog.service                               enabled 
sshd.service                                  enabled 
systemd-readahead-collect.service             enabled 
systemd-readahead-drop.service                enabled 
systemd-readahead-replay.service              enabled 
tuned.service                                 enabled
# getenforce
Disabled

セットアップに必要なモジュールのインストール

# yum install gcc-c++ make git krb5-devel
# rpm -qa | grep gcc-c++
gcc-c++-4.8.5-16.el7.x86_64
# rpm -qa | grep make
make-3.82-23.el7.x86_64
# rpm -qa | grep git-
git-1.8.3.1-12.el7_4.x86_64
# rpm -qa | grep krb5-devel
krb5-devel-1.15.1-8.el7.x86_64

Node.jsのインストール

# curl --silent --location https://rpm.nodesource.com/setup_6.x | bash -
# yum install nodejs
# rpm -qa | grep nodejs
nodejs-6.11.3-1nodesource.x86_64

参考: https://nodejs.org/ja/download/package-manager/

MongoDBのインストール

yumでインストールすると古いバージョンが入るため、新しいリポジトリに向ける。

# vi /etc/yum.repos.d/mongodb.repo
# yum install mongodb-org
# rpm -qa | grep mongodb-org
mongodb-org-tools-3.4.9-1.el7.x86_64
mongodb-org-server-3.4.9-1.el7.x86_64
mongodb-org-mongos-3.4.9-1.el7.x86_64
mongodb-org-shell-3.4.9-1.el7.x86_64
mongodb-org-3.4.9-1.el7.x86_64
# systemctl enable mongod
# systemctl start mongod
# mongo
> use crowi
> quit()
mongodb.repo
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

参考: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/

Crowiのインストール

# git clone https://github.com/crowi/crowi.git
# cd crowi
# git tag
v1.0.3
v1.0.4
v1.1.1
v1.1.2
v1.2.0
v1.3.0
v1.3.1
v1.4.0
v1.5.0
v1.5.1
v1.5.2
v1.5.3
v1.6.0
v1.6.1
v1.6.2
# git checkout v1.6.2
# npm install
# npm run build

Crowiのサービス化

# vi /etc/systemd/system/crowi.service
# vi /etc/sysconfig/crowi
# systemctl daemon-reload
/etc/systemd/system/crowi.service
[Unit]
Description=Crowi
After=network.target mongod.service

[Service]
WorkingDirectory=/root/crowi
EnvironmentFile=/etc/sysconfig/crowi
ExecStart=/usr/bin/node app.js

[Install]
WantedBy=multi-user.target
/etc/sysconfig/crowi
PORT=3000
NODE_ENV=production
MONGO_URI="mongodb://localhost/crowi"
PASSWORD_SEED="`openssl rand -base64 128 | head -1`"
FILE_UPLOAD=local

Crowiの起動

# systemctl start crowi
# systemctl enable crowi

Crowiの起動確認

Webブラウザを起動し、以下のURLにアクセスする。
http://CrowiサーバーのIPアドレス:3000

参考

https://qiita.com/bezeklik/items/48fe054c2df05f03f3d1
https://qiita.com/nooby/items/9b197c2b666d6b8371e1