version: "3.9" services: frontend-gpt: build: context: ./frontend dockerfile: Dockerfile command: npm run dev -- -H 0.0.0.0 env_file: - infra/docker/.env.development environment: - NEXT_PUBLIC_API_URL=http://api-gpt:8000 volumes: - ./frontend:/app - node_modules-gpt:/app/node_modules ports: - "3001:3000" depends_on: - api-gpt api-gpt: build: context: ./api dockerfile: Dockerfile command: python manage.py runserver 0.0.0.0:8000 env_file: - infra/docker/.env.development environment: - DJANGO_SETTINGS_MODULE=config.settings - REDIS_URL=redis://cache-gpt:6379/0 - MINIO_ENDPOINT=http://storage-gpt:9000 volumes: - ./api:/app - media-gpt:/app/media ports: - "8000:8000" depends_on: - db-gpt - cache-gpt - storage-gpt worker-gpt: build: context: ./api dockerfile: Dockerfile command: celery -A config.celery_app worker -l info env_file: - infra/docker/.env.development environment: - DJANGO_SETTINGS_MODULE=config.settings - REDIS_URL=redis://cache-gpt:6379/0 - MINIO_ENDPOINT=http://storage-gpt:9000 volumes: - ./api:/app depends_on: - api-gpt - db-gpt - cache-gpt - storage-gpt scheduler-gpt: build: context: ./api dockerfile: Dockerfile command: celery -A config.celery_app beat -l info env_file: - infra/docker/.env.development environment: - DJANGO_SETTINGS_MODULE=config.settings - REDIS_URL=redis://cache-gpt:6379/0 - MINIO_ENDPOINT=http://storage-gpt:9000 volumes: - ./api:/app depends_on: - api-gpt - db-gpt - cache-gpt - storage-gpt db-gpt: image: postgres:15-alpine env_file: - infra/docker/.env.development volumes: - pgdata-gpt:/var/lib/postgresql/data ports: - "5433:5432" cache-gpt: image: redis:7-alpine command: redis-server --appendonly yes volumes: - redisdata-gpt:/data ports: - "6379:6379" storage-gpt: image: minio/minio:RELEASE.2024-01-11T07-46-16Z command: server /data --console-address ":9001" env_file: - infra/docker/.env.development volumes: - minio-gpt:/data ports: - "9000:9000" - "9001:9001" volumes: node_modules-gpt: pgdata-gpt: redisdata-gpt: minio-gpt: media-gpt: