rowboat/docker-compose.yml
2025-03-10 13:55:01 +05:30

163 lines
4.6 KiB
YAML

version: '3.8'
services:
rowboat:
build:
context: ./apps/rowboat
dockerfile: Dockerfile
ports:
- "3000:3000"
environment:
- OPENAI_API_KEY=${OPENAI_API_KEY}
- MONGODB_CONNECTION_STRING=${MONGODB_CONNECTION_STRING}
- AUTH0_SECRET=${AUTH0_SECRET}
- AUTH0_BASE_URL=${AUTH0_BASE_URL}
- AUTH0_ISSUER_BASE_URL=${AUTH0_ISSUER_BASE_URL}
- AUTH0_CLIENT_ID=${AUTH0_CLIENT_ID}
- AUTH0_CLIENT_SECRET=${AUTH0_CLIENT_SECRET}
- AGENTS_API_URL=http://agents:3001
- AGENTS_API_KEY=${AGENTS_API_KEY}
- COPILOT_API_URL=http://copilot:3002
- COPILOT_API_KEY=${COPILOT_API_KEY}
- REDIS_URL=redis://redis:6379
- USE_RAG=${USE_RAG}
- QDRANT_URL=${QDRANT_URL}
- QDRANT_API_KEY=${QDRANT_API_KEY}
- USE_RAG_UPLOADS=${USE_RAG_UPLOADS}
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
- RAG_UPLOADS_S3_BUCKET=${RAG_UPLOADS_S3_BUCKET}
- RAG_UPLOADS_S3_REGION=${RAG_UPLOADS_S3_REGION}
- USE_RAG_SCRAPING=${USE_RAG_SCRAPING}
- FIRECRAWL_API_KEY=${FIRECRAWL_API_KEY}
- USE_CHAT_WIDGET=${USE_CHAT_WIDGET}
- CHAT_WIDGET_HOST=http://localhost:3006
- CHAT_WIDGET_SESSION_JWT_SECRET=${CHAT_WIDGET_SESSION_JWT_SECRET}
- MAX_QUERIES_PER_MINUTE=${MAX_QUERIES_PER_MINUTE}
- MAX_PROJECTS_PER_USER=${MAX_PROJECTS_PER_USER}
restart: unless-stopped
agents:
build:
context: ./apps/agents
dockerfile: Dockerfile
ports:
- "3001:3001"
environment:
- OPENAI_API_KEY=${OPENAI_API_KEY}
- API_KEY=${AGENTS_API_KEY}
restart: unless-stopped
copilot:
build:
context: ./apps/copilot
dockerfile: Dockerfile
ports:
- "3002:3002"
environment:
- OPENAI_API_KEY=${OPENAI_API_KEY}
- API_KEY=${COPILOT_API_KEY}
restart: unless-stopped
simulation_runner:
build:
context: ./apps/simulation_runner
dockerfile: Dockerfile
environment:
- MONGODB_URI=${MONGODB_CONNECTION_STRING}
- ROWBOAT_API_HOST=http://rowboat:3000
- OPENAI_API_KEY=${OPENAI_API_KEY}
restart: unless-stopped
setup_qdrant:
build:
context: ./apps/rowboat
dockerfile: scripts.Dockerfile
command: ["npm", "run", "setupQdrant"]
profiles: [ "setup_qdrant" ]
environment:
- QDRANT_URL=${QDRANT_URL}
- QDRANT_API_KEY=${QDRANT_API_KEY}
restart: no
delete_qdrant:
build:
context: ./apps/rowboat
dockerfile: scripts.Dockerfile
command: ["npm", "run", "deleteQdrant"]
profiles: [ "delete_qdrant" ]
environment:
- QDRANT_URL=${QDRANT_URL}
- QDRANT_API_KEY=${QDRANT_API_KEY}
restart: no
rag_files_worker:
build:
context: ./apps/rowboat
dockerfile: scripts.Dockerfile
command: ["npm", "run", "ragFilesWorker"]
profiles: [ "rag_files_worker" ]
environment:
- OPENAI_API_KEY=${OPENAI_API_KEY}
- MONGODB_CONNECTION_STRING=${MONGODB_CONNECTION_STRING}
- GOOGLE_API_KEY=${GOOGLE_API_KEY}
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
- RAG_UPLOADS_S3_BUCKET=${RAG_UPLOADS_S3_BUCKET}
- RAG_UPLOADS_S3_REGION=${RAG_UPLOADS_S3_REGION}
- QDRANT_URL=${QDRANT_URL}
- QDRANT_API_KEY=${QDRANT_API_KEY}
restart: unless-stopped
rag_urls_worker:
build:
context: ./apps/rowboat
dockerfile: scripts.Dockerfile
command: ["npm", "run", "ragUrlsWorker"]
profiles: [ "rag_urls_worker" ]
environment:
- OPENAI_API_KEY=${OPENAI_API_KEY}
- MONGODB_CONNECTION_STRING=${MONGODB_CONNECTION_STRING}
- FIRECRAWL_API_KEY=${FIRECRAWL_API_KEY}
- QDRANT_URL=${QDRANT_URL}
- QDRANT_API_KEY=${QDRANT_API_KEY}
restart: unless-stopped
tools_webhook:
build:
context: ./apps/tools_webhook
dockerfile: Dockerfile
profiles: [ "tools_webhook" ]
ports:
- "3005:3005"
environment:
- SIGNING_SECRET=${SIGNING_SECRET}
restart: unless-stopped
chat_widget:
build:
context: ./apps/chat_widget
dockerfile: Dockerfile
profiles: [ "chat_widget" ]
ports:
- "3006:3006"
environment:
- PORT=3006
- CHAT_WIDGET_HOST=http://localhost:3006
- ROWBOAT_HOST=http://localhost:3000
restart: unless-stopped
redis:
image: redis:latest
ports:
- "6379:6379"
restart: unless-stopped
docs:
build:
context: ./apps/docs
dockerfile: Dockerfile
profiles: [ "docs" ]
ports:
- "8000:8000"
restart: unless-stopped