admin / Apex
publicBid Management and Orchestration Tool with AI Capability
Apex / Synapse-Apexv2 / docker-compose.yml
1913 B · main
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | services: postgres: image: postgres:16 environment: POSTGRES_USER: ${POSTGRES_USER:-apex} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-apex_dev_pw} POSTGRES_DB: ${POSTGRES_DB:-apex} volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-apex}"] interval: 5s timeout: 5s retries: 10 redis: image: redis:7 healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 5s timeout: 5s retries: 10 backend: build: ./backend command: uvicorn app.main:app --host 0.0.0.0 --port 8000 env_file: .env environment: DATABASE_URL: postgresql+psycopg://${POSTGRES_USER:-apex}:${POSTGRES_PASSWORD:-apex_dev_pw}@postgres:5432/${POSTGRES_DB:-apex} REDIS_URL: redis://redis:6379/0 volumes: - uploads:/data/uploads depends_on: postgres: condition: service_healthy redis: condition: service_healthy healthcheck: test: ["CMD", "python", "-c", "import urllib.request,sys; sys.exit(0 if urllib.request.urlopen('http://localhost:8000/api/health').status==200 else 1)"] interval: 10s timeout: 5s retries: 10 worker: build: ./backend command: celery -A app.workers.celery_app.celery worker --loglevel=info env_file: .env environment: DATABASE_URL: postgresql+psycopg://${POSTGRES_USER:-apex}:${POSTGRES_PASSWORD:-apex_dev_pw}@postgres:5432/${POSTGRES_DB:-apex} REDIS_URL: redis://redis:6379/0 volumes: - uploads:/data/uploads depends_on: postgres: condition: service_healthy redis: condition: service_healthy backend: condition: service_started frontend: build: ./frontend ports: - "3000:80" depends_on: backend: condition: service_started volumes: pgdata: uploads: |