-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
52 lines (50 loc) · 1.9 KB
/
Copy pathdocker-compose.yml
File metadata and controls
52 lines (50 loc) · 1.9 KB
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
# ModelSyncBridge 一键部署(远程 MCP Server)
#
# 用法:
# export MSB_AUTH_API_KEYS=your-access-key
# export MSB_SERVER_PUBLIC_URL=https://mcp.example.com
# docker compose up -d
#
# 之后任何 Agent 都可以直接接入:
# url: https://mcp.example.com/mcp
# headers: { "Authorization": "Bearer your-access-key" }
#
# 注:为了支持浏览器/远程 Agent 直连,生产环境建议在 8081 端口前挂
# HTTPS(Caddy/Nginx/Traefik),或使用支持 TLS 的 PaaS 部署。
services:
modelsyncbridge:
image: ghcr.io/${GHCR_REPO:-halor-qu/modelsyncbridge}:latest
container_name: modelsyncbridge
restart: unless-stopped
ports:
- "8080:8080" # REST API
- "8081:8081" # MCP (Streamable HTTP)
environment:
# 访问控制(强烈建议开启)
MSB_AUTH_ENABLE_API_KEY: "${MSB_AUTH_ENABLE_API_KEY:-true}"
MSB_AUTH_API_KEYS: "${MSB_AUTH_API_KEYS:-change-me}"
# 供 MCP 工具生成可下载的绝对 URL(download_3d_model_content 需要)
MSB_SERVER_PUBLIC_URL: "${MSB_SERVER_PUBLIC_URL:-http://localhost:8080}"
# 数据与缓存持久化
MSB_DATABASE_PATH: "/app/data/modelsyncbridge.db"
MSB_STORAGE_DATA_DIR: "/app/data"
MSB_STORAGE_ARTIFACTS_DIR: "/app/data/artifacts" # 协同工件目录(manifest.json / latest.json)
# 厂商密钥按需注入(示例)
MSB_PROVIDER_MOCK_ENABLED: "${MSB_PROVIDER_MOCK_ENABLED:-true}"
# MSB_PROVIDER_MESHY_ENABLED: "true"
# MSB_PROVIDER_MESHY_API_KEYS: "${MSB_PROVIDER_MESHY_API_KEYS:-}"
volumes:
- msb-data:/app/data
healthcheck:
test: ["CMD", "/usr/local/bin/modelsyncbridge", "-config", "/app/config/config.yaml", "-healthcheck"]
interval: 30s
timeout: 5s
retries: 3
start_period: 10s
logging:
driver: json-file
options:
max-size: "10m"
max-file: "3"
volumes:
msb-data: