canvas-lms/docker-compose.jenkins.yml

49 lines
1.5 KiB
YAML

version: "2"
# despite building upon the other docker-compose files, in CI land we only
# spin up things explicitly listed here. so to add a new service to CI,
# you need to at least add something here (it can as simple as
# `service_name: {}` if the upstream config is correct)
#
# if you have a service that depends on cached volume data (e.g. pre-
# migrated postgres, assets, etc), ensure it shares a volume with the
# data_loader, and it will automagically get cached/fetched
#
# if you have a service that takes a few moments to spin up (e.g.
# a database server), if you want to ensure it's actually up as
# part of docker-composing, you should implement /wait-for-it
services:
redis:
image: redis:alpine
ports:
- "${REDIS_PORT}:6379"
postgres:
build: ./build/docker-compose/postgres/$PGVERSION
environment:
MASTER_RUNNERS: $MASTER_RUNNERS
ports:
- "${PGPORT}:5432"
cassandra:
build: ./build/docker-compose/cassandra
environment:
CASSANDRA_START_RPC: 'true'
MASTER_RUNNERS: $MASTER_RUNNERS
volumes:
- cassandra_data:/var/lib/cassandra
ports:
- "${CASSANDRA_PORT}:9160"
data_loader:
build: ./build/docker-compose/data_loader
environment:
BASE_DOCKER_VOLUME_ARCHIVE: $BASE_DOCKER_VOLUME_ARCHIVE
DOCKER_CACHE_S3_REGION: $DOCKER_CACHE_S3_REGION
volumes:
- pg_data:/volumes/postgres_data
- cassandra_data:/volumes/cassandra_data
volumes:
cassandra_data: {}