Spaces:
Running
Running
| version: '3.8' | |
| services: | |
| # PostgreSQL Database | |
| db: | |
| image: postgres:16-alpine | |
| environment: | |
| POSTGRES_DB: promptaid_e2e | |
| POSTGRES_USER: promptaid | |
| POSTGRES_PASSWORD: promptaid_e2e_password | |
| ports: | |
| - "5433:5432" | |
| volumes: | |
| - postgres_e2e_data:/var/lib/postgresql/data | |
| healthcheck: | |
| test: ["CMD-SHELL", "pg_isready -U promptaid -d promptaid_e2e"] | |
| interval: 5s | |
| timeout: 5s | |
| retries: 5 | |
| # MinIO S3 Storage | |
| minio: | |
| image: minio/minio:latest | |
| environment: | |
| MINIO_ROOT_USER: minioadmin | |
| MINIO_ROOT_PASSWORD: minioadmin123 | |
| ports: | |
| - "9000:9000" | |
| - "9001:9001" | |
| volumes: | |
| - minio_e2e_data:/data | |
| command: server /data --console-address ":9001" | |
| healthcheck: | |
| test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"] | |
| interval: 10s | |
| timeout: 5s | |
| retries: 5 | |
| # Application (Frontend + Backend combined) | |
| app: | |
| build: | |
| context: .. | |
| dockerfile: Dockerfile | |
| environment: | |
| ENV: e2e | |
| DATABASE_URL: postgresql://promptaid:promptaid_e2e_password@db:5432/promptaid_e2e | |
| S3_ENDPOINT: http://minio:9000 | |
| S3_ACCESS_KEY: minioadmin | |
| S3_SECRET_KEY: minioadmin123 | |
| S3_BUCKET: promptaid-e2e | |
| VISION_PROVIDER: mock | |
| ADMIN_PASSWORD: admin_e2e_password | |
| ports: | |
| - "7860:7860" | |
| depends_on: | |
| db: | |
| condition: service_healthy | |
| minio: | |
| condition: service_healthy | |
| healthcheck: | |
| test: ["CMD", "curl", "-f", "http://localhost:7860/health"] | |
| interval: 10s | |
| timeout: 5s | |
| retries: 5 | |
| volumes: | |
| postgres_e2e_data: | |
| minio_e2e_data: | |