docker-compose-staging.yml
version: "2"
# Environment is similar to production
volumes:
media:
nginx-config:
celery-beat-store:
staging-db:
staging-redis:
services:
# Nginx web server is only for development environment. Disabled in production.
staging-redis:
env_file: env/staging.list
image: redis:3.2.5-alpine
volumes:
- staging-redis:/data
staging-db:
image: postgres:9.6.1
env_file: env/staging.list
volumes:
- staging-db:/var/lib/postgresql
upgrade:
image: tuomasairaksinen/serviceform:latest
user: root
env_file: env/staging.list
command: upgrade
links:
- staging-db:db
- staging-redis:redis
volumes:
- media:/code/media
- nginx-config:/nginx-config
- celery-beat-store:/celery-beat-store
celery:
image: tuomasairaksinen/serviceform:latest
command: celery
env_file: env/staging.list
links:
- staging-redis:redis
- staging-db:db
depends_on:
- upgrade
celery-beat:
image: tuomasairaksinen/serviceform:latest
command: celery-beat
env_file: env/staging.list
links:
- staging-db:db
- staging-redis:redis
volumes:
- celery-beat-store:/store
depends_on:
- upgrade
task-processor:
image: tuomasairaksinen/serviceform:latest
command: task-processor
env_file: env/staging.list
links:
- staging-db:db
- staging-redis:redis
depends_on:
- upgrade
send-emails:
command: send-emails
image: tuomasairaksinen/serviceform:latest
env_file: env/staging.list
links:
- staging-db:db
depends_on:
- upgrade
app:
image: tuomasairaksinen/serviceform:latest
env_file: env/staging.list
ports:
- "8080:8080"
command: app
links:
- staging-db:db
- staging-redis:redis
volumes:
- media:/code/media
depends_on:
- upgrade