ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

DeerFlow 部署实战:从本地跑通到上线只要 4 步

DeerFlow 部署实战:从本地跑通到上线只要 4 步 DeerFlow 部署实战从本地跑通到上线只要 4 步【免费下载链接】deer-flowAn open-source long-horizon SuperAgent harness that researches, codes, and creates. With the help of sandboxes, memories, tools, skill, subagents and message gateway, it handles different levels of tasks that could take minutes to hours.项目地址: https://gitcode.com/GitHub_Trending/de/deer-flowDeerFlow 部署这件事绕不开四个坎装完依赖跑不起来、本地能跑但别人打不开、想上云又不想自己养服务器、真要上线前一堆事没头绪。这篇文章不堆理论按你实际会踩的场景走一遍每个场景给出一条真正能跑通的命令顺序以及卡住时的解法。先把全局放进来本地开发、Docker、云端三套方案本质上都在启动同一组服务——网关、前端、nginx 反代、Redis。四个场景就是下面四步的事。装完依赖跑不起来先跑这个体检命令DeerFlow 安装对工具链有硬性要求版本不匹配是最常见的翻车点组件最低版本Python3.12Node.js22uv0.6pnpm8.15先别手动装任何东西让项目自己告诉你缺什么make check # 一键体检缺哪个报哪个 make install # 后端 uv sync 前端 pnpm install一次到位装完不要急着启动。直接手写config.yaml的人十个有九个卡在这一步项目自带配置向导能生成最小可用配置make setup # 交互式向导填模型 key 和搜索 key 就够 make dev # 起 gateway(8001) frontend(3000) nginx(2026)启动成功后访问http://localhost:2026。为什么统一走 2026 这个端口因为 nginx 把/api/*全部收口转发给网关你不用自己处理前后端两个域名的 CORS浏览器里也不会有一堆跨域报错。如果make setup这步卡住九成是 环境变量模板 里的模型 key 和搜索 API key 没填打开看一眼注释就能对上位置。make check报 Node 版本不够升级 Node 后重跑别去改任何代码。一条 make up 把整套服务拉起来本地跑通之后下一个问题就是——怎么让环境跟我的机器没关系别人拿去也能直接起make up # 构建镜像 启动 redis、gateway、frontend、nginx 四个容器就这一条命令。它背后做了几件你本来要手动做的事自动生成并持久化BETER_AUTH_SECRET前端会话签名丢了等于全员掉登录和内部网关鉴权令牌config.yaml不存在时自动从config.example.yaml派生一份启动时带--wait四个容器全部健康检查通过才返回你看到的就是一个能用的服务。make down收尾日志用make docker-logs分服务查看。默认只绑127.0.0.1局域网里没人能访问你。这不是 bugDeerFlow 的 Agent 能在沙箱里执行命令官方默认就是本机可信模型。真要给同事或公网用在.env里设BIND_HOST0.0.0.0再make up一次——但前提是 TLS 和登录门已经架在前面顺序不能反后面细说。镜像本身是多阶段构建的gateway 基于 uv 镜像装依赖前端单独一个 stage推远端仓库或镜像仓库都不用改。把镜像扔上火山引擎 FaaS机器不用自己管场景用量不大但希望服务 7x24 在线又不想为它养一台服务器。这时候 FaaS 的按量计费才划算。做法很朴素FaaS 本质还是跑一个容器那就把同一套镜像推上去。make up build # 只构建不启动 docker push 镜像仓库/deer-flow-gateway:latest docker push 镜像仓库/deer-flow-frontend:latest然后到火山引擎控制台建容器镜像服务收镜像FaaS 控制台新建函数指向镜像填入口命令gateway 就是uv run uvicorn app.gateway.app:app --host 0.0.0.0 --port 8001和监听端口环境变量照.env抄一遍——模型 key、搜索 key、PORT一个都不能少。前端函数指向 frontend 镜像DEER_FLOW_INTERNAL_GATEWAY_BASE_URL填 gateway 函数的内网地址。为什么不用 compose 一把梭FaaS 的弹性伸缩和冷启动调度是平台在管你只管镜像和环境变量。冷启动偏慢就开实例预热数据落盘走云存储挂载别往容器里写。另外注意config.yaml里沙箱模式选localprovisioner那套是给 K8s 集群用的FaaS 单机用不上。卡住的常见姿势函数起来但网关 502十有八九是NO_PROXY没配内网地址全走了外网代理把 compose 里那份NO_PROXY列表抄进 FaaS 环境变量即可。上线前必做的三件事代码能跑不等于能上线。生产环境配置就看三处。第一make doctor。和make check不一样doctor 查的是配置项之间的矛盾——模型 key 和 endpoint 对不对得上、沙箱配置合不合法、版本有没有漂移。上线前过一遍日志干净再往下走。第二密钥不进代码库。模型 key 留在config.yaml里是开发习惯生产上挪进环境变量或平台的密钥管理BETTER_AUTH_SECRET一定要自己指定并备份deploy 脚本虽然会帮你生成但换一次就是一次全员登出。第三访问收口。前面说了默认只绑回环现在轮到它发挥作用真要把BIND_HOST设成0.0.0.0暴露到网络动作顺序必须是——先上 TLS、先开好登录、先建好管理员账号最后才让端口可达。顺序反了等于把一个能执行命令的 Agent 裸奔在公网。# .env 生产环境最小集 PORT2026 # BIND_HOST127.0.0.1 # 留空默认回环暴露时先做完前置再放开 BETTER_AUTH_SECRET自己生成并备份的随机串本地一条make devDocker 一条make up云端就是把同一套镜像推给 FaaS。剩下的记住三件事先体检、密钥进环境变量、最后再开门——剩下的事compose 和网关自己会干。【免费下载链接】deer-flowAn open-source long-horizon SuperAgent harness that researches, codes, and creates. With the help of sandboxes, memories, tools, skill, subagents and message gateway, it handles different levels of tasks that could take minutes to hours.项目地址: https://gitcode.com/GitHub_Trending/de/deer-flow创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表