wikiサーバーCrowiを動かせるdockerイメージです。
Crowiのバージョンはv1.5.0です。
ベースイメージにnode:4.5-slimを使用しています。
- Docker
- Docker Compose
git clone https://github.com/nooby-noob/docker-node-crowi.git
cd docker-node-crowi
docker-compose up
docker-compose up
コマンドでcrowiを立ち上げた後、http://localhost
にアクセスしてください。
docker-compose.ymlの内容です。
version: '2'
services:
crowi:
image: noobynoob/docker-node-crowi:v1.5.0
links:
- mongo:mogo
- redis:redis
- elasticsearch:elasticsearch
ports:
- 80:80
mongo:
image: mongo
redis:
image: redis:alpine
elasticsearch:
image: elasticsearch
user: elasticsearch
ports:
- 9200:9200
command:
- "sh"
- "-c"
- "./bin/plugin install analysis-kuromoji;
./bin/plugin install mobz/elasticsearch-head;
elasticsearch;"
Crowiの本体の他にmongodb, redis, elasticsearchのコンテナが起動するようになっています。elasticsearchは起動時のcommandをいじり、elasticsearchが起動する前にpluginのインストールを行うようにしています。
docker-entry-point.sh
で環境変数を初期化しています。
export NODE_ENV=production
export MONGO_URI=${MONGO_URI:-mongodb://mongo:27017/crowi}
export REDIS_URL=${REDIS_URI:-redis://redis:6379/crowi}
export ELASTICSEARCH_URI=${ELASTICSEARCH_URI:-http://elasticsearch:9200/crowi}
redisやmongodbのサーバーがすでに用意されている時はDocker Composeを使わずに単体でcrowiを立ち上げてください。
docker run \
-e REDIS_URL=redis://REDIS_HOST:REDIS_PORT/path/to/db \
-e MONGO_URI=mongodb://MONGO_HOST:MONGO_PORT/path/to/db \
noobynoob/docker-node-crowi:v1.5.0
環境変数の詳細については公式を参考にしてください。
https://github.com/crowi/crowi#environment
- The MIT License (MIT)