version: '3.5' volumes: nginx-shared: services: nginx: image: nginx:1.19-alpine hostname: nginx ports: - "8001:8000" volumes: - ./docker/nginx/nginx.conf:/etc/nginx/nginx.conf:ro - nginx-shared:/nginx depends_on: - web redis: image: redis:6-alpine ports: - "6379:6379" db: image: postgres:10-alpine ports: - "5432:5432" environment: POSTGRES_PASSWORD: postgres web: platform: linux/amd64 build: context: . dockerfile: docker/web/Dockerfile env_file: - .env depends_on: - db - redis working_dir: /app ports: - "8888:8888" volumes: - nginx-shared:/nginx command: docker/web/run_web.sh worker: &worker platform: linux/amd64 build: context: . dockerfile: docker/web/Dockerfile env_file: - .env depends_on: - db - redis command: docker/web/celery/worker/run.sh scheduler: <<: *worker command: docker/web/celery/scheduler/run.sh