模型服务私有化部署
JXWAF 标准版支持在本地部署 AI 安全模型服务,实现本地化的 AI 安全检测能力,无需依赖云端模型服务。
部署步骤
1. 取消服务注释
编辑 docker-compose.yml,找到文件末尾的 jxwaf_model_update 服务块,取消全部注释(即删除每行开头的 #):
# ==================== AI 模型更新服务(可选,按需取消注释启用) ====================
jxwaf_model_update:
image: ccr.ccs.tencentyun.com/jxwaf/jxwaf_model_update:1.13
container_name: jxwaf_model_update
restart: unless-stopped
depends_on:
- mysql_db
network_mode: host
# ... 完整配置见 docker-compose.yml
2. 修改授权码
将 AUTH_CODE 替换为有效的授权码:
environment:
AUTH_CODE: <你的授权码>
配置文件自带测试用授权码,过期时间 2026-12-31
3. 配置 AI 平台 API Key
在 PLATFORMS 配置中填入对应 AI 平台的 api_key,以 DeepSeek 为例:
PLATFORMS: |-
{
"deepseek": {
"api_key": "<你的 DeepSeek API Key>",
"api_url": "https://api.deepseek.com/chat/completions",
"model": "deepseek-v4-flash",
"temperature": 0.2,
"timeout": 300,
"max_retries": 2,
"thinking_type": "enabled",
"stream": false
}
}
4.(可选)启用 HTTPS
如需通过 HTTPS 访问模型服务,修改以下配置并挂载 SSL 证书:
ENABLE_TLS: "true"
volumes:
- ./ssl/server.crt:/opt/jxwaf_model_update/nginx/conf/server.crt:ro
- ./ssl/server.key:/opt/jxwaf_model_update/nginx/conf/server.key:ro
5. 启动服务
运行以下命令拉取镜像并启动服务:
docker compose up -d
配置说明
| 配置项 | 说明 |
|---|---|
AUTH_CODE | 授权码,用于授权验证,默认测试用授权码,过期时间 2026-12-31 |
AI_PLATFORM_ORDER | AI 平台优先级顺序,模型查询时按此顺序依次尝试 |
PLATFORMS | AI 平台详细配置(JSON 格式),支持 DeepSeek、MiniMax、百炼等平台 |
ANALYSIS_COUNT | 同一模型多次请求,结果一致才采纳 |
SYNC_INTERVAL | 本地 DB 数据同步间隔(秒) |
SCAN_INTERVAL | AI 分析扫描间隔(秒) |
STREAM_PORT | 服务监听端口,默认 39977 |
ENABLE_TLS | 是否开启 HTTPS |
模型服务与 WAF 节点的对接
部署完成后,需要修改 jxwaf_admin_server 服务中的模型服务连接配置,将原本指向云端服务的地址改为本地地址。
在 docker-compose.yml 中找到 jxwaf_admin_server 的 environment 配置,修改以下三项:
jxwaf_admin_server:
environment:
JXWAF_MODEL_SERVER_HOST: 127.0.0.1 # 改为本地地址(原 model.jxwaf.com)
JXWAF_MODEL_SERVER_PORT: 39977 # 端口不变
JXWAF_MODEL_SERVER_SSL: "false" # 本地部署关闭 SSL(原 "true")
修改后重启服务即可生效:
docker compose restart jxwaf_admin_server
