Run Crowi on CentOS7 x GCP


幾通りか試したが、うまくいった方法。Crowi興味ある。サクッと試したい人向け。
CentOSだとバイナリ取ってきて起動が早いかも?

追記:少し試して、Crowiはサブドメイン運用ができないとわかったため、個人的にはあまりお勧めできなくなってしまった。(https://github.com/crowi/crowi/issues/162)

GCP要件

n1-standard1以上必須。f1, g1はnpm installでお亡くなりになったので。


yum -y install git-core

nodejs 10.xのバイナリを取ってくる

11.xだとダメみたい?ここから。https://nodejs.org/dist/latest-v10.x/

cd #$HOMEへ
curl https://nodejs.org/dist/latest-v10.x/node-v10.18.1-linux-x64.tar.gz -o nodejs.tgz
mkdir nodejs && tar xfz nodejs.tgz -C nodejs  --strip-components 1
echo "export PATH=$PATH:$HOME/nodejs/bin" >> .bashrc
source ~/.bashrc

crowi ビルド、インストール

cd #$HOMEへ
git clone --depth 1 https://github.com/crowi/crowi.git
cd crowi
npm install
npm run build

mongoのバイナリを取ってくる

ここから。https://www.mongodb.com/download-center/community

cd #$HOMEへ
curl https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.2.tgz -o mongo.tgz
mkdir mongodb && tar xfz mongo.tgz -C mongodb --strip-components 1
echo "export PATH=$PATH:$HOME/mongodb/bin" >> ~/.bashrc
source ~/.bashrc
sudo mkdir -p /data/db && sudo chown $USER /data/db

mongodb起動

mongoは普通に起動するとjournalingが起動してディスクを食べていくようだ。
なのでジャーナリングなしで起動する。

mongod  --nojournal

crowi 起動

cd $HOME/crowi
npm start

ポートフォワードして、ローカルから繋ごう

ブラウザからlocalhost:3000で繋がる。

gcloud compute ssh instance-1 -- -N -L 3000:localhost:3000

疑問

動いたCrowiのバージョンはdevが取れないんだよなぁ。。masterブランチはdev版てこと?

Crowi Version
1.8.0-dev

こちらのリリース版を取ってきた方がいいのかも。
https://github.com/crowi/crowi/releases/tag/v1.7.9