node.jsをインストールする

ファイルを取得する。

cd /tmp
sudo curl -O http://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.gz

インストールを行う。

sudo tar --strip-components 1 -xzvf node-v8.11.1-linux-x64.tar.gz -C /usr/local

インストールが正常にされているかバージョンを確認する。

node -v
v8.11.1

mongodbをインストールする

yum リポジトリの定義ファイルを作成する。

sudo vi /etc/yum.repos.d/mongodb.repo

以下のように編集する。

[mongodb]
name=MongoDB repo
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=0

インストールします。

sudo yum --enablerepo=mongodb install -y mongodb-org

DBをスタートさせる。

sudo service mongod start

バージョンを確認する

mongo
db.version
2.6.12

Crowi 用の DB を作成します。
ここでは DB 名は crowidb としました。

use crowidb
switched to db crowidb

続いてユーザを作成。
ここではとりあえず、ユーザ名「crowi」パスワード「password0」としました。

db.createUser({user: "crowi", pwd: "password0", roles: [{role: "readWrite", db: "crowidb"}]});
Successfully added user: {
"user" : "crowi",
"roles" : [
{
"role" : "readWrite",
"db" : "crowidb"
}
]
}

Redis のインストール

EPEL からインストールします。

sudo rpm --import http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7
sudo yum --enablerepo=epel install -y redis

インストールしたらサービスを起動。
自動起動設定も有効にします。

sudo service redis start
sudo chkconfig redis on

接続できるか確認しておきます。

redis-cli -h localhost INFO Server

ElasticSearch のインストール

まずは Java をインストールします。

sudo yum install -y java-1.8.0

yum リポジトリからインストールするため、GPG Key をインストール。

sudo rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

リポジトリ定義ファイルを作成。

sudo vi /etc/yum.repos.d/elasticsearch.repo

以下のように編集します。

[elasticsearch-2.x]
name=Elasticsearch repository for 2.x packages
baseurl=https://packages.elastic.co/elasticsearch/2.x/centos
gpgcheck=1
gpgkey=https://packages.elastic.co/GPG-KEY-elasticsearch
enabled=0

インストール、起動、自動起動設定の有効化を行います。

sudo yum --enablerepo=elasticsearch-2.x install -y elasticsearch
sudo service elasticsearch start
sudo chkconfig elasticsearch on

日本語に対応するため、analysis-kuromoji をインストールします。

sudo /usr/share/elasticsearch/bin/plugin install analysis-kuromoji

プラグインが読めているか確認する。

sudo service elasticsearch restart
sudo curl -X GET 'http://localhost:9200/_nodes/plugins?pretty' | grep Japanese

Crowi のインストール

まずは git と krb5-devel をインストール。

sudo yum install -y git krb5-devel

アプリケーション配置用ディレクトリを作成します。
ここでは「/var/apps」にしました。

sudo mkdir /var/apps && cd /var/apps/

crowi を Github から clone して v1.6.0 タグをチェックアウトします。

sudo git clone https://github.com/crowi/crowi.git && cd crowi/
sudo git checkout refs/tags/v1.6.0
sudo yum -y install gcc gcc-c++

フォルダのオーナーを変更する。

cd ..
sudo chown ec2-user:ec2-user -R crowi/
cd crowi

npm install を実行します。
ここが結構時間がかかります。

npm install

CSS, JS のビルドを実行。
画面にアクセスしてデザインが崩れている場合はこれが抜けている可能性が高いです。

npm run build

適当なパラメータで実行

FILE_UPLOAD=local PASSWORD_SEED=password0 MONGO_URI=mongodb://localhost/crowidb npm start

動作を確認する。

http://localhost:3000/

動作を確認できたら止める

npm stop

foreverで自動起動させるように設定していく

npm install -g forever initd-forever log

init.dスクリプトの作成

initd-forever -n crowi
chmod +x crowi
sudo mv crowi /etc/init.d

引数等を足す (FILE_UPLOAD=localを入れています)

sudo vim /etc/init.d/crowi
- nodeApp="/home/username/crowi"
+ nodeApp="/home/username/crowi/app.js"
- $foreverApp start --pidFile $pidFile -l $logFile -a -d -c "$command" $nodeApp
+ FILE_UPLOAD=local PASSWORD_SEED=password0 MONGO_URI=mongodb://localhost/crowidb $foreverApp start --pidFile $pidFile -l $logFile -a -d -c "$command" $nodeApp

起動設定

sudo chkconfig crowi --add
sudo chkconfig crowi on
sudo chkconfig crowi list
sudo service crowi start

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.