blob: faac4a4250b53d05a2296da4f618d9f953b416d3 [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
web:
build: .
working_dir: /allura
# specialized command (and working_dir) to run broccoli
# since it depends on files from the shared volume, it can't be run as part of the Dockerfile build :(
command: >
sh -c '
if [ ! -e Allura/allura/public/nf/js/build/transpiled.js ]; then
npm install &&
npm run build;
fi;
gunicorn --paste Allura/docker-dev.ini --reload
'
ports:
- "8080:8080"
volumes:
- .:/allura
# mount env to allow update and sharing with taskd container
- /allura-data/env-docker/python:/usr/local/lib/python2.7
- /allura-data/env-docker/bin:/usr/local/bin
# mounting it separatelly to create git, svn, hg directories automatically
- /allura-data/scm/git:/allura-data/scm/git
- /allura-data/scm/hg:/allura-data/scm/hg
- /allura-data/scm/svn:/allura-data/scm/svn
- /allura-data/scm/snapshots:/allura-data/scm/snapshots
links:
- mongo
- solr
- outmail
taskd:
image: allura_web
working_dir: /allura/Allura
command: paster taskd docker-dev.ini
volumes_from:
- web
links:
- mongo
- solr
- outmail
solr:
build: solr_config
working_dir: /solr/solr-4.2.1/example
command: java -jar start.jar
ports:
- "8983:8983"
volumes:
- /allura-data/solr:/solr/solr-4.2.1/example/solr/collection1/data
mongo:
image: mongo:2.6
ports:
- "27017:27017"
volumes:
- /allura-data/mongo:/data/db
command: mongod --smallfiles
outmail:
image: allura_web
command: python -m smtpd -n -c DebuggingServer 0.0.0.0:8826
expose:
- "8826"
inmail:
image: allura_web
working_dir: /allura/Allura
command: paster smtp_server docker-dev.ini
volumes_from:
- web
ports:
- "8825:8825"
links:
- mongo