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