|
|
services: |
|
|
frontend: |
|
|
build: |
|
|
context: ./rag-quest-hub |
|
|
dockerfile: Dockerfile.dev |
|
|
ports: |
|
|
- "3000:8080" |
|
|
depends_on: |
|
|
- backend |
|
|
environment: |
|
|
- VITE_API_BASE_URL=http://backend:8000 |
|
|
- VITE_API_TIMEOUT=30000 |
|
|
- VITE_ENABLE_REGISTRATION=true |
|
|
volumes: |
|
|
|
|
|
- ./rag-quest-hub/src:/app/src |
|
|
- ./rag-quest-hub/public:/app/public |
|
|
- ./rag-quest-hub/package.json:/app/package.json |
|
|
- ./rag-quest-hub/vite.config.ts:/app/vite.config.ts |
|
|
- ./rag-quest-hub/tailwind.config.ts:/app/tailwind.config.ts |
|
|
- ./rag-quest-hub/tsconfig.json:/app/tsconfig.json |
|
|
- ./rag-quest-hub/postcss.config.js:/app/postcss.config.js |
|
|
- ./rag-quest-hub/components.json:/app/components.json |
|
|
- ./rag-quest-hub/.env.production:/app/.env.production |
|
|
|
|
|
- /app/node_modules |
|
|
networks: |
|
|
- app-network |
|
|
|
|
|
backend: |
|
|
build: . |
|
|
ports: |
|
|
- "8000:8000" |
|
|
volumes: |
|
|
- ./src:/app/src |
|
|
- ./scripts:/app/scripts |
|
|
- ./alembic:/app/alembic |
|
|
- ./alembic.ini:/app/alembic.ini |
|
|
- db_data:/app/data |
|
|
depends_on: |
|
|
- qdrant |
|
|
environment: |
|
|
- QDRANT_HOST=qdrant |
|
|
- GEMINI_API_KEY=${GEMINI_API_KEY} |
|
|
- CORS_ORIGINS=http://localhost:3000,http://127.0.0.1:3000,http://frontend:8080 |
|
|
- DATABASE_URL=sqlite+aiosqlite:///./data/knowledge_assistant.db |
|
|
- JWT_SECRET=your-super-secret-jwt-key-for-development-only |
|
|
- JWT_LIFETIME_SECONDS=3600 |
|
|
- USER_REGISTRATION_ENABLED=true |
|
|
- EMAIL_VERIFICATION_REQUIRED=false |
|
|
entrypoint: ["/app/scripts/wait-for-qdrant.sh", "qdrant:6333", "/app/scripts/init-db.sh"] |
|
|
networks: |
|
|
- app-network |
|
|
|
|
|
qdrant: |
|
|
image: qdrant/qdrant:latest |
|
|
ports: |
|
|
- "6333:6333" |
|
|
- "6334:6334" |
|
|
volumes: |
|
|
- qdrant_data:/qdrant/storage |
|
|
networks: |
|
|
- app-network |
|
|
|
|
|
volumes: |
|
|
qdrant_data: |
|
|
db_data: |
|
|
|
|
|
networks: |
|
|
app-network: |
|
|
driver: bridge |