1. 1. 拉取官方镜像
shell
docker pull apache/doris-mcp-server:latest
# 或指定版本,推荐固定版本
docker pull apache/doris-mcp-server:0.5.1
2.准备配置文件 .env 文件
powershell
DORIS_HOST=192.168.0.128
DORIS_PORT=9030
DORIS_USER=root
DORIS_PASSWORD=admin@123
DORIS_DATABASE=longport_hft
HOST=0.0.0.0
PORT=3000
LOG_LEVEL=INFO
3. Doris MCP Server 的高级配置(config.json)
kotlin
{
"security": {
"enabled": true,
"blocked_keywords": [
"DROP",
"DELETE",
"TRUNCATE",
"ALTER",
"CREATE",
"INSERT",
"UPDATE",
"GRANT",
"REVOKE",
"SET",
"KILL",
"SHUTDOWN",
"LOAD",
"BACKUP",
"RESTORE",
"ADMIN",
"EXPORT",
"IMPORT"
],
"max_result_rows": 5000000000,
"allowed_databases": [
"longport_hft",
"longport_hft_agent_u",
"longport_hft_agent_h"
]
},
"auth": {
"enabled": true,
"tokens": [
"sk-doris-mcp-prod-2025-a1b2c3d4e5f67890",
"sk-doris-mcp-dev-2025-xyz789mnopqrs"
]
},
"logging": {
"level": "INFO",
"mask_sensitive": true
}
}
参数说明:
bash
blocked_keywords 拦截高危 SQL 操作,防止数据破坏
max_result_rows 防止大查询拖垮 Doris 或网络
allowed_databases 仅允许查询指定业务库,隔离敏感数据
tokens 只有持有有效 token 的客户端才能连接
mask_sensitive 日志中自动隐藏 token 和密码
4.确保启动容器时 挂载该文件并指定
bash
docker run -d \
--name doris-mcp-server \
-v /home/models/doris-mcp/config.json:/app/config.json:ro \
-e DORIS_HOST=192.168.0.128 \
-e DORIS_PORT=9030 \
-e DORIS_USER=root \
-e DORIS_PASSWORD='admin@123' \
-e HOST=0.0.0.0 \
-e PORT=3000 \
-p 3000:3000 \
doris-mcp-server:latest
5. 客户端调用示例
bash
{
"mcpServers": {
"doris": {
"url": "http://192.168.0.128:3000/mcp",
"headers": {
"Authorization": "Bearer sk-doris-mcp-prod-2025-a1b2c3d4e5f67890"
}
}
}
}
