version: "3" services: redis_pubsub: build: context: . dockerfile: Dockerfile image: allocation-image depends_on: - postgres - redis - mailhog environment: - DB_HOST=postgres - DB_PASSWORD=abc123 - REDIS_HOST=redis - EMAIL_HOST=mailhog - PYTHONDONTWRITEBYTECODE=1 volumes: - ./src:/src - ./tests:/tests entrypoint: - python - /src/allocation/entrypoints/redis_eventconsumer.py api: image: allocation-image depends_on: - redis_pubsub - mailhog environment: - DB_HOST=postgres - DB_PASSWORD=abc123 - API_HOST=api - REDIS_HOST=redis - EMAIL_HOST=mailhog - PYTHONDONTWRITEBYTECODE=1 - FLASK_APP=allocation/entrypoints/flask_app.py - FLASK_DEBUG=1 - PYTHONUNBUFFERED=1 volumes: - ./src:/src - ./tests:/tests entrypoint: - flask - run - --host=0.0.0.0 - --port=80 ports: - "5005:80" postgres: image: postgres:9.6 environment: - POSTGRES_USER=allocation - POSTGRES_PASSWORD=abc123 ports: - "54321:5432" redis: image: redis:alpine ports: - "63791:6379" mailhog: image: mailhog/mailhog ports: - "11025:1025" - "18025:8025"