DockerのUbuntu上にCrowiを構築してみた

ワケあってdocker-composeが使えないため、
アナログな方法で立ち上げます。

Ubuntuの立ち上げ

Ubuntuコンテナを立ち上げ、コンテナ内に入ります。

docker run -p 8080:3000 --privileged --name demo-crowi ubuntu /sbin/init
docker exec -it demo-crowi bash

MongoDBのセットアップ

デフォルトポート27017で立ち上がります。

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.4.list
apt-get update
apt-get install -y mongodb-org
mongo -version
service mongod start

自動起動設定をしておきます。

systemctl enable mongod

Crowiのセットアップ

gitからcrowiをダウンロードし、npmインストール。

apt-get install -y git
git clone -b v1.6.2 https://github.com/crowi/crowi/
cd ./crowi
apt-get install -y curl
apt-get install -y nodejs npm
npm cache clean
npm install n -g
n stable
apt-get purge -y nodejs npm
ln -sf /usr/local/bin/node /usr/bin/node
ln -sf /usr/local/bin/npm /usr/bin/npm
npm install

Crowi立ち上げ

PASSWORD_SEED=pwseed123456789 MONGO_URI=mongodb://localhost:27017 npm start

http://dockerホスト:8080/にアクセスしてみます。

正常に立ち上がりました!
この記事もMarkdownで書いてるので、試しにそのまま貼り付けてみます。

おお。

CSSなどうまく読み込まれていない場合

再ビルド

npm run build

次回

このままでは検索機能が使えないので、次回有効にしてみます。

サーバサイドエンジニア。オムライスが好物

シェアする

  • このエントリーをはてなブックマークに追加

フォローする