File: //opt/agentcloud/docker-compose.yml
name: agentcloud
services:
docker_rabbitmq:
image: rabbitmq:3.13.1-management
environment:
RABBITMQ_DEFAULT_USER: guest
RABBITMQ_DEFAULT_PASS: guest
ports:
- "127.0.0.1:5672:5672"
- "127.0.0.1:15672:15672"
docker_mongo:
restart: always
image: mongo:latest
ports:
- "127.0.0.1:27017:27017"
volumes:
- mongodb_data_container:/data/db
docker_redis:
restart: always
image: redis:latest
ports:
- "127.0.0.1:6379:6379"
volumes:
- redis_data:/data
webapp_next:
restart: always
build:
context: webapp/
args:
- GOOGLE_KEYPATH=keyfile.json
- SHORT_COMMIT_HASH=${SHORT_COMMIT_HASH}
# - NEXT_PUBLIC_ENABLE_GOOGLE_OAUTH=
# - NEXT_PUBLIC_ENABLE_GITHUB_OAUTH=
- NEXT_PUBLIC_GCS_BUCKET_NAME=${GCS_BUCKET_NAME}
- NEXT_PUBLIC_HUBSPOT_MEETING_LINK=https://meetings.hubspot.com/andrew520
- POSTHOG_KEY=
- GOOGLE_APPLICATION_CREDENTIALS=/app/keyfile.json
ports:
- "0.0.0.0:3500:3000"
depends_on:
- docker_rabbitmq
- docker_mongo
- docker_redis
environment:
- AMAZON_ACCESS_KEY=AKIASTOGE57REXWV5NSA
- AMAZON_SECRET_ACCESS_KEY=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
- GOOGLE_APPLICATION_CREDENTIALS=/app/keyfile.json
- RABBITMQ_HOST=docker_rabbitmq
- RABBITMQ_PORT=5672
- RABBITMQ_STREAM=streaming
- RABBITMQ_EXCHANGE=agentcloud
- RABBITMQ_ROUTING_KEY=key
- RABBITMQ_USERNAME=guest
- RABBITMQ_PASSWORD=guest
- EXPRESS_HOST=0.0.0.0
- EXPRESS_PORT=3000
- NODE_ENV=development
- DB_URL=mongodb://docker_mongo:27017/test
- REDIS_HOST=docker_redis
- REDIS_PASS=
- JWT_SECRET=changeme
- COOKIE_SECRET=changeme
- AGENT_BACKEND_SOCKET_TOKEN=changeme
- PROJECT_ID=${PROJECT_ID}
- SMTP_HOST=houston.panomity.com
- SMTP_PORT=587
- SMTP_SECURE=false # true for port 465, false for other ports
- SMTP_USER=noreply@teamki.de
- SMTP_PASS=nrtki4482
- FROM_EMAIL_ADDRESS=noreply@teamki.de
- URL_APP=https://teamki.de
- DEBUG=webapp:*
- STRIPE_WEBHOOK_SECRET=
- STRIPE_ACCOUNT_SECRET=
- NEXT_PUBLIC_GCS_BUCKET_NAME=${GCS_BUCKET_NAME}
- OAUTH_GITHUB_CLIENT_ID=
- OAUTH_GITHUB_CLIENT_SECRET=
- OAUTH_GOOGLE_CLIENT_ID=
- OAUTH_GOOGLE_CLIENT_SECRET=
- VECTOR_APP_URL=http://vector_db_proxy:9001
- AIRBYTE_WEB_URL=http://airbyte-proxy:8000
- AIRBYTE_API_URL=http://airbyte-proxy:8006
- AIRBYTE_ADMIN_WORKSPACE_ID=${AIRBYTE_ADMIN_WORKSPACE_ID}
- AIRBYTE_ADMIN_DESTINATION_ID=${AIRBYTE_ADMIN_DESTINATION_ID}
- AIRBYTE_USERNAME=airbyte
- AIRBYTE_PASSWORD=password
- GCS_BUCKET_NAME=${GCS_BUCKET_NAME}
- GCS_BUCKET_LOCATION=${GCS_BUCKET_LOCATION}
- STRIPE_FREE_PLAN_PRICE_ID=price_1P0zlRDxQ9GZKzvoYUAzWMSv
- STRIPE_PRO_PLAN_PRICE_ID=price_1OAMHSDxQ9GZKzvoBbDryhiZ
- STRIPE_TEAMS_PLAN_PRICE_ID=price_1P0xEGDxQ9GZKzvoTDfMJK6f
- STRIPE_ADDON_USERS_PRICE_ID=price_1PFnQmDxQ9GZKzvoS4cRlCtt
- STRIPE_ADDON_STORAGE_PRICE_ID=price_1PGClWDxQ9GZKzvoiB8SNOrV
- STRIPE_FREE_PLAN_PRODUCT_ID=prod_Pqh9LfvzCal4Ux
- STRIPE_PRO_PLAN_PRODUCT_ID=prod_OyItEyf2n0TZGj
- STRIPE_TEAMS_PLAN_PRODUCT_ID=prod_PqeXHjZLXeuzyr
- STRIPE_ADDON_USERS_PRODUCT_ID=prod_PqgU2ZCIJqDDRf
- STRIPE_ADDON_STORAGE_PRODUCT_ID=prod_Q6Pao7IJyTNLYv
- NEXT_PUBLIC_STORAGE_PROVIDER=local
- NEXT_PUBLIC_SECRET_PROVIDER=local
- UPLOADS_BASE_PATH=/tmp
volumes:
- datasource_files:/tmp
agent_backend:
restart: always
build:
context: agent-backend/
args:
- SHORT_COMMIT_HASH=${SHORT_COMMIT_HASH}
ports:
- '127.0.0.1:8080:8080'
depends_on:
- webapp_next
image: agent_backend
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- LOCAL=True
- MAX_THREADS=50
- BASE_PATH=/app
- SOCKET_URL=http://webapp_next:3000/
- DB_URL=mongodb://docker_mongo:27017/test
- REDIS_HOST=docker_redis
- QDRANT_HOST=qdrant
- MONGO_DB_NAME=test
- MAX_RETRIES=10
- AGENT_BACKEND_SOCKET_TOKEN=changeme
vector_db_proxy:
restart: always
depends_on:
- docker_rabbitmq
- qdrant
build:
context: vector-db-proxy/
args:
- RELEASE=${RELEASE}
- GOOGLE_KEYPATH=keyfile.json
- SHORT_COMMIT_HASH=${SHORT_COMMIT_HASH}
ports:
- '127.0.0.1:9001:9001'
image: vector_db_proxy
environment:
- HOST=0.0.0.0
- PORT=9001
- MONGO_URI=mongodb://docker_mongo:27017
- RABBITMQ_HOST=docker_rabbitmq
- RABBITMQ_PORT=5672
- RABBITMQ_STREAM=streaming
- RABBITMQ_EXCHANGE=agentcloud
- RABBITMQ_ROUTING_KEY=key
- RABBITMQ_USERNAME=guest
- RABBITMQ_PASSWORD=guest
- QDRANT_URI=http://qdrant:6334
- REDIS_HOST=docker_redis
- REDIS_PORT=6379
- WEBAPP_HOST=webapp_next
- THREAD_PERCENTAGE_UTILISATION=0.8
- USE_GPU=false
- LOGGING_LEVEL=debug
volumes:
- datasource_files:/tmp
qdrant:
ports:
- '127.0.0.1:6333:6333'
- '127.0.0.1:6334:6334'
image: qdrant/qdrant
environment:
- QDRANT__LOG_LEVEL=DEBUG
volumes:
- qdrant_data:/qdrant_data
volumes:
mongodb_data_container:
redis_data:
datasource_files:
qdrant_data:
networks:
default:
external: true
name: airbyte_airbyte_internal