






















之前我写了这篇博客《复刻 ChatGPT 高级数据分析!Sdcb Chats 1.10 重磅发布:能分析Excel、做PPT》,向大家介绍了 Chats 1.10 最激动人心的新功能——内置代码执行器(Code Interpreter)。
文章发出后,反响很热烈,但也有很多朋友在问:“这功能看着很强,但到底怎么部署及其配置啊?”
回头看了一下前一篇文章,确实光顾着兴奋地介绍功能,把最关键的部署实操给略过了。为了让大家都能尽快用上这个“硬核”功能,今天特地补上这篇详细的保姆级部署配置文档。
想要在 Chats 中使用“代码执行”功能,主要分两步走:
Chats 的代码执行器原理是:当模型需要执行代码时,Chats 会动态创建一个一次性的 Docker 容器(沙箱),在里面运行代码并获取结果。因此,Chats 必须拥有管理 Docker 的权限。
这里主要介绍两种最常见的场景:纯 Docker 环境(Linux 服务器)和 Windows 下的 Docker Desktop。
这是生产环境最常用的方式。你只需要将宿主机的 Docker Socket 挂载到 Chats 容器中即可。

Chats 的 Docker 镜像托管在 sdcb/chats,我们提供了完善的多架构支持:
| 描述 | Docker 镜像 Tag | 说明 |
|---|---|---|
关于 Manifest (多架构支持):
我们的 latest 和语义化版本标签(如 1.10.0)都是 Manifest List。这意味着你不需要手动区分 linux-x64 还是 linux-arm64。
无论你在 x64 的 Linux 服务器、ARM64 的树莓派,还是 Windows Server (Nano Server) 上执行 docker pull sdcb/chats:latest,Docker 都会自动检测并拉取最适合当前系统的镜像层。
由于 Docker Socket 默认属于 root 用户,为了避免权限问题(Permission Denied),建议显式指定 --user 0:0 以 root 身份运行容器。
在启动 Chats 的 docker run 命令或 docker-compose.yml 中,添加 user 配置和挂载卷:
-v /var/run/docker.sock:/var/run/docker.sock --user 0:0
完整的 docker run 命令示例:
# 创建数据目录并授权
mkdir -p ./AppData && chmod 755 ./AppData
# 启动容器
docker run -d --restart unless-stopped --name sdcb-chats \
-p 8080:8080 \
-e DBType=sqlite \
-e ConnectionStrings__ChatsDB="Data Source=./AppData/chats.db" \
-v ./AppData:/app/AppData \
-v /var/run/docker.sock:/var/run/docker.sock --user 0:0 \
sdcb/chats:latest
示例 docker-compose.yml:
version: '3'
services:
chats:
image: sdcb/chats:latest
user: 0:0 # 关键:必须使用 root 用户才能访问 docker.sock
volumes:
- /var/run/docker.sock:/var/run/docker.sock # 关键配置:挂载 Docker 守护进程
- ./data:/app/data
ports:
- "8080:8080"
在 Windows (使用 Docker Desktop) 上部署时,情况稍微特殊一点,取决于你是在 Docker 容器内运行 Chats,还是直接运行 Chats 的 Windows 可执行文件 (.exe)。
如果你是通过 docker run 启动 Chats 的,那么恭喜你,配置方法其实和 Linux 完全一样!
Docker Desktop for Windows 做了很好的兼容,你只需要把 /var/run/docker.sock 挂载进去即可,不需要配置 npipe 或 TCP。
PowerShell 启动命令示例:
docker run -d -p 8080:8080 `
-v /var/run/docker.sock:/var/run/docker.sock `
-v ${PWD}/data:/app/data `
sdcb/chats:latest
如果你不习惯使用 Docker 部署应用,我们提供了基于预编译的原生可执行文件,无需安装任何运行时(如 .NET SDK/Runtime)即可直接运行,启动速度较快且内存占用低。
可执行文件列表:
| 平台 | 文件名 | 说明 |
|---|---|---|
你可以从 下载指南文档 页面获取下载地址。该文档详细列出了 GitHub Releases 及国内加速镜像的下载方式。
配置与启动:
如果你下载了 Chats.BE.exe (Windows 版后端) 直接运行,而不是使用 Docker 镜像,那么你需要通过命令行参数指定 Windows 的命名管道 (Named Pipe) 来连接 Docker 引擎。
chats-win-x64.zip。--CodePod:DockerEndpoint 参数指定 Docker 接入点。PowerShell 启动命令示例:
# 启动后端程序,并指定 Docker 引擎地址
.\Chats.BE.exe --CodePod:DockerEndpoint npipe://./pipe/docker_engine
你也可以同时指定其它参数(如端口):
.\Chats.BE.exe --urls http://+:5000 --CodePod:DockerEndpoint npipe://./pipe/docker_engine
这样,原生运行的 Chats 也能顺利指挥 Docker Desktop 创建沙箱环境了。
连上 Docker 只是打通了经脉,接下来还需要在 Chats 内部“解锁”这个技能。
首先,我们要告诉 Chats,哪些模型允许使用这个能力。

⚠️ 特别注意:用户权限分配
很多第一次添加模型的朋友容易忽略这一点:启用功能后,必须明确授权给用户。
在模型编辑页面的底部,展开用户列表 (User Access),确保给你自己的账号(或需要使用的用户)勾选上权限。如果不勾选,你在前台是看不到这个模型的,或者无法调用该功能。

后端准备就绪后,最后一步是在聊天界面开启使用。

一切就绪!现在你可以像使用 ChatGPT 的高级数据分析一样,上传一个 Excel 文件,或者让它帮你画一张图表了。
试试发送这样的指令:
请帮我分析这个 Excel 文件:https://cv-public.sdcb.pub/2026/changsha_weather_2025.xlsx,生成一个包含每月平均气温和降水量的报告,并附上图表
Chats 会自动创建一个隔离的 Docker 环境,编写 Python 代码,执行并把生成的图片直接贴在对话框里。

⚠️ 重要提示:与模型 API 调用不同,代码执行功能目前不进行任何计费,仅通过全局配置做了一些基础限制。如果你打算将 Chats 开放给未经充分信任的用户使用(例如搭建类似 ChatGPT/Manus 的公开服务),务必认真配置以下安全策略,避免服务器资源被滥用甚至被攻击。
代码执行容器的默认网络模式为 bridge,这与 ChatGPT 的完全隔离沙箱不同——容器是可以联网的。
这个设计是有意为之的,因为它带来了更强大的能力:
但这也意味着潜在风险:
建议:
CodeInterpreter:MaxAllowedNetworkMode 设置为 none,完全禁止容器联网。AI 可以创建任意数量的 Docker 会话(通过 create_docker_session 工具)。虽然空闲会话会在一定时间后自动清理,但仍存在以下风险:
Chats 提供了细粒度的资源限制配置,强烈建议根据实际情况调整:
| 配置项 | 默认值 | 说明 |
|---|---|---|
默认的 2 核 2GB 配置可以完成大多数日常任务(数据分析、图表生成、文档处理等)。如果你的场景需要更多资源(如视频处理、大规模计算),可以适当放宽;反之,如果是公开服务,建议收紧限制。
AI 执行代码后可以将生成的文件(artifacts)回传给用户。为防止滥用,Chats 也提供了相应限制:
| 配置项 | 默认值 | 说明 |
|---|---|---|
docker image prune 或 docker system prune 定期清理未使用的镜像和悬挂资源。更多配置细节请参考:配置说明文档
希望这篇文档能帮你顺利部署 Chats 1.10,体验完全私有化、可控的代码解释器功能。
感谢阅读!喜欢的朋友请给我的 GitHub 项目一个 star:
https://github.com/sdcb/chats
这是完整的更新日志,包含更多技术细节:
https://github.com/sdcb/chats/blob/main/doc/zh-CN/release-notes/README.md
有什么想法也欢迎在评论区留言交流,也欢迎加入我的新创建的微信群:

如果你更习惯用 QQ 的话,也可以加入 Chats QQ 群:498452653,我们一起探索更多 AI 技术硬核玩法。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。