mirror of
https://gitee.com/wanwujie/deer-flow
synced 2026-04-19 20:34:45 +08:00
Add Kubernetes-based sandbox provider for multi-instance support (#19)
* feat: adds docker-based dev environment * docs: updates Docker command help * fix local dev * feat(sandbox): add Kubernetes-based sandbox provider for multi-instance support * fix: skills path in k8s * feat: add example config for k8s sandbox * fix: docker config * fix: load skills on docker dev * feat: support sandbox execution to Kubernetes Deployment model * chore: rename web service name
This commit is contained in:
@@ -3,8 +3,8 @@
|
||||
#
|
||||
# Services:
|
||||
# - nginx: Reverse proxy (port 2026)
|
||||
# - web: Frontend Next.js dev server (port 3000)
|
||||
# - api: Backend Gateway API (port 8001)
|
||||
# - frontend: Frontend Next.js dev server (port 3000)
|
||||
# - gateway: Backend Gateway API (port 8001)
|
||||
# - langgraph: LangGraph server (port 2024)
|
||||
#
|
||||
# Access: http://localhost:2026
|
||||
@@ -19,29 +19,34 @@ services:
|
||||
volumes:
|
||||
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
|
||||
depends_on:
|
||||
- web
|
||||
- api
|
||||
- frontend
|
||||
- gateway
|
||||
- langgraph
|
||||
networks:
|
||||
- deer-flow-dev
|
||||
restart: unless-stopped
|
||||
|
||||
# Frontend - Next.js Development Server
|
||||
web:
|
||||
frontend:
|
||||
build:
|
||||
context: ../frontend
|
||||
dockerfile: Dockerfile
|
||||
context: ../
|
||||
dockerfile: frontend/Dockerfile
|
||||
args:
|
||||
PNPM_STORE_PATH: ${PNPM_STORE_PATH:-/root/.local/share/pnpm/store}
|
||||
container_name: deer-flow-web
|
||||
command: pnpm run dev
|
||||
container_name: deer-flow-frontend
|
||||
command: sh -c "cd frontend && pnpm run dev > /app/logs/frontend.log 2>&1"
|
||||
volumes:
|
||||
- ../frontend:/app
|
||||
- ../frontend/src:/app/frontend/src
|
||||
- ../frontend/public:/app/frontend/public
|
||||
- ../frontend/next.config.js:/app/frontend/next.config.js:ro
|
||||
- ../logs:/app/logs
|
||||
# Mount pnpm store for caching
|
||||
- ${PNPM_STORE_PATH:-~/.local/share/pnpm/store}:/root/.local/share/pnpm/store
|
||||
working_dir: /app
|
||||
environment:
|
||||
- NODE_ENV=development
|
||||
- WATCHPACK_POLLING=true
|
||||
- CI=true
|
||||
env_file:
|
||||
- ../frontend/.env
|
||||
networks:
|
||||
@@ -49,17 +54,26 @@ services:
|
||||
restart: unless-stopped
|
||||
|
||||
# Backend - Gateway API
|
||||
api:
|
||||
gateway:
|
||||
build:
|
||||
context: ../backend
|
||||
dockerfile: Dockerfile
|
||||
container_name: deer-flow-api
|
||||
command: uv run uvicorn src.gateway.app:app --host 0.0.0.0 --port 8001 --reload
|
||||
context: ../
|
||||
dockerfile: backend/Dockerfile
|
||||
container_name: deer-flow-gateway
|
||||
command: sh -c "cd backend && uv run uvicorn src.gateway.app:app --host 0.0.0.0 --port 8001 --reload --reload-include='*.yaml .env' > /app/logs/gateway.log 2>&1"
|
||||
volumes:
|
||||
- ../backend:/app
|
||||
- ../config.yaml:/app/config.yaml:ro
|
||||
- ../backend/src:/app/backend/src
|
||||
- ../backend/.env:/app/backend/.env
|
||||
- ../config.yaml:/app/config.yaml
|
||||
- ../skills:/app/skills
|
||||
- ../logs:/app/logs
|
||||
working_dir: /app
|
||||
environment:
|
||||
- CI=true
|
||||
env_file:
|
||||
- ../backend/.env
|
||||
extra_hosts:
|
||||
# For Linux: map host.docker.internal to host gateway
|
||||
- "host.docker.internal:host-gateway"
|
||||
networks:
|
||||
- deer-flow-dev
|
||||
restart: unless-stopped
|
||||
@@ -67,13 +81,19 @@ services:
|
||||
# Backend - LangGraph Server
|
||||
langgraph:
|
||||
build:
|
||||
context: ../backend
|
||||
dockerfile: Dockerfile
|
||||
context: ../
|
||||
dockerfile: backend/Dockerfile
|
||||
container_name: deer-flow-langgraph
|
||||
command: uv run langgraph dev --no-browser --allow-blocking --no-reload --host 0.0.0.0 --port 2024
|
||||
command: sh -c "cd backend && uv run langgraph dev --no-browser --allow-blocking --host 0.0.0.0 --port 2024 > /app/logs/langgraph.log 2>&1"
|
||||
volumes:
|
||||
- ../backend:/app
|
||||
- ../config.yaml:/app/config.yaml:ro
|
||||
- ../backend/src:/app/backend/src
|
||||
- ../backend/.env:/app/backend/.env
|
||||
- ../config.yaml:/app/config.yaml
|
||||
- ../skills:/app/skills
|
||||
- ../logs:/app/logs
|
||||
working_dir: /app
|
||||
environment:
|
||||
- CI=true
|
||||
env_file:
|
||||
- ../backend/.env
|
||||
networks:
|
||||
|
||||
Reference in New Issue
Block a user