version: "3.8" services: redis: container_name: redis_test image: redis:7.2.4-alpine3.19 ports: - '6380:6379' healthcheck: test: [ "CMD", "redis-cli","ping" ] interval: 10s timeout: 5s retries: 5 db: container_name: pgdb image: postgres:15.1-alpine env_file: - .env environment: POSTGRES_DB: ${POSTGRES_DB} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} ports: - 6432:5432 healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"] interval: 10s timeout: 5s retries: 5 app: container_name: fastfood_app build: context: . env_file: - .env ports: - 8000:8000 depends_on: db: condition: service_healthy redis: condition: service_healthy restart: always volumes: - .:/usr/src/fastfood command: /bin/bash -c 'poetry run python /usr/src/fastfood/manage.py --run-docker-server' celery: container_name: celery build: context: . env_file: - .env depends_on: - rabbitmq - db - app - redis volumes: - .:/usr/src/fastfood command: /bin/bash -c 'poetry run python /usr/src/fastfood/manage.py --run-selery' rabbitmq: container_name: rabbit image: "rabbitmq:management" ports: - 5672:5672