新闻详情

新闻详情

首页 / 资讯中心 / 详情

Cloudflare Computer 实战教程:容器里跑 pandoc 把 Markdown 变成 PDF,5 步搞定

发布时间:2026/8/31 10:13:54来源:尧图网络
Cloudflare Computer 实战教程:容器里跑 pandoc 把 Markdown 变成 PDF,5 步搞定
Cloudflare Computer 实战教程容器里跑 pandoc 把 Markdown 变成 PDF5 步搞定【免费下载链接】computerGive your agent a computer 项目地址: https://gitcode.com/GitHub_Trending/computer1/computer概要Cloudflare Computer 是一个跑在 Durable Object 里的虚拟文件系统能把容器变成 Agent 的专属电脑。本实战带你用它的官方 tutorial 示例 走完完整流程在容器里跑 pandoc把 Agent 写好的 Markdown 一键转换成 PDF并通过 R2 签名链接分享出去。这个示例能做什么examples/tutorial 是一个菜谱卡片Agent你 POST 一道菜名比如spaghetti bologneseAgent 联网查菜谱在宿主机侧把 Markdown 卡片写入/workspace/card.mdAgent 通过bash在容器里执行pandoc把 Markdown 转成 PDFPDF 同步回宿主机文件系统上传 R2返回一个 24 小时有效的签名链接。关键点在于宿主机的write和容器里的pandoc操作的是同一个文件系统——没有任何拷文件的步骤。这正是 Cloudflare Computer 的核心能力。原理一个文件系统两个世界上图展示了它的分层结构Durable Object内部有一个 SQLite 存储它是文件系统的唯一真相源容器里的computerd守护进程把这份状态挂载为 FUSE 文件系统落在/workspace中间的Sync Protocol保证两边的视图一致宿主机写入的 Markdown容器里能当普通文件读pandoc生成的 PDF命令结束后也能同步回宿主机。这意味着 Agent 的文件工具写文件和 Shell 工具跑命令可以无缝接力——这正是给 Agent 一台电脑Give your agent a computer 的含义。第 1 步准备容器镜像DockerfileDockerfile 是理解容器里跑 pandoc的关键要点只有三条基础要求computerd必须是容器里的 PID 1ENTRYPOINT [/usr/local/bin/computerd]它负责挂载 workspace安装 pandoc 3.10 和 typsttypst 被选作 PDF 引擎因为它只是一个约 30 MB 的单文件二进制而安装 LaTeX 会让镜像膨胀几百 MB——这是生产环境选型的实用技巧FUSE_MOUNTauto在 Cloudflare Containers 上用真实内核 FUSE本地wrangler dev下自动回退到用户态 shim一个镜像两地通用。第 2 步给 Worker 配置三个绑定wrangler.jsonc 里只有三个核心绑定缺一不可绑定作用aiWorkers AI提供 Agent 用的模型containers为RecipeAgent这个 Durable Object 类配套一个容器每个实例一台私有 Linux 小盒子r2_buckets存放成品 PDF 的桶recipe-cards另外记得先把桶建出来wrangler r2 bucket create recipe-cardswrangler 不会代劳。第 3 步把 Workspace 接到 Agent 上在 src/index.ts 中Durable Object 通过withWorkspaceContainer混入容器生命周期并用CloudflareContainerBackend告诉 Workspace 你的文件就挂在这个容器里readonly #backend new CloudflareContainerBackend({ container: () this, workspace: { binding: RecipeAgent, id: this.ctx.id.toString() }, egress: { mode: direct }, // 容器需要联网查菜谱不需要网络时改为 none });egress: { mode: direct }显式保留容器的出站访问——Agent 要访问菜谱网站如果你的命令不需要网络用{ mode: none }更安全。第 4 步Agent 写 Markdown、容器跑 pandoc系统提示词getSystemPrompt把工具编排成四拍查 sitemap → 挑菜谱 → 写卡片 → 转 PDF。真正在容器里执行的转换命令只有一行pandoc /workspace/card.md -o /workspace/card.pdf --pdf-enginetypst宿主机写入的card.md经 FUSE 挂载出现在容器磁盘上pandoc像读本地文件一样读它命令结束card.pdf原路同步回来。全程零拷贝。第 5 步PDF 上传 R2返回签名链接card()方法在 Agent 回合完成后做两件事用createAssets把/workspace/card.pdf流式传到 R2 并签发一个 24 小时有效的 GET 链接然后finally里workspace.close()关掉一次性容器会话。桶保持私有、Worker 不碰文件字节、链接到期自动失效——分享链路非常干净。本地跑起来本地运行需要 Docker首次构建会拉取computerd基础镜像并安装 pandoc/typst。clone 仓库后git clone https://gitcode.com/GitHub_Trending/computer1/computer cd computer npm install npm run build --workspace cloudflare/computer npm run dev --workspace example/computer-tutorial然后发请求要一张卡片curl -X POST http://localhost:8787/prompt \ -H content-type: application/json \ -d {prompt:spaghetti bolognese}响应是 JSON一句总结 一个 R2 签名链接。注意第一次请求会比较慢——容器要先启动等computerd就绪后第一个bash才能真正执行。相关文件索引文件说明examples/tutorial/README.md从空目录逐段构建完整示例的官方教程examples/tutorial/src/index.ts单文件 Worker 实现Agent Workspace 分享链路examples/tutorial/Dockerfilepandoc typst 容器镜像定义examples/tutorial/wrangler.jsoncAI / Container / R2 绑定配置examples/container/README.md更底层的 write/read/exec HTTP 示例docs/19_performance.mdFUSE 文件系统性能基准数据小结这个示例用不到 150 行代码演示了 Cloudflare Computer 最核心的工作流Durable Object 管状态、容器跑真实二进制、FUSE 挂载让两边共享一个文件系统。当你想让 Agent 执行 pandoc、ffmpeg、node 这类真实 Linux 二进制时这套架构就是最直接的落地方案。想继续深入可以从 packages/computer 的 README 入手。【免费下载链接】computerGive your agent a computer 项目地址: https://gitcode.com/GitHub_Trending/computer1/computer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

内存BOM冲击解析:从DRAM涨价到HBM挤占产能的产业链传导 2026/8/31 11:04:16

内存BOM冲击解析:从DRAM涨价到HBM挤占产能的产业链传导

内存涨价已经不是停留在行情播报里的概念,而是消费者可以直接算出来的一笔账:内存条价格抬升、SSD 每 GB 单价回升、手机大内存版本价差拉大。只要打开电商平台对比一下近期报价,就能感受到这次“内存 BOM 冲击”已经传导到终端。BOM 是物料清…

阅读更多 →
把JD贴进IDE两分钟开始面试?AI与IDE结合的真价值 2026/8/31 11:04:16

把JD贴进IDE两分钟开始面试?AI与IDE结合的真价值

那类把职位描述贴进 IDE、两分钟后开始模拟面试的工具概念,最近让不少人眼前一亮。它的吸引点不在于“快”,而在于它把面试准备这件事,从“刷资料、找面经、约真人模拟”压缩成了一条可重复执行的本地工作流。更进一步说,这类工具…

阅读更多 →
MATLAB/Simulink通信系统建模与仿真实战:从BPSK到OFDM 2026/8/31 11:04:16

MATLAB/Simulink通信系统建模与仿真实战:从BPSK到OFDM

很多做通信方向的同学,一开始都是从公式推导和理论分析入手,等到真正想验证一个调制解调方案、看一条误码率曲线,或者要把算法搭成可复现的系统时,往往都会回到 MATLAB 和 Simulink。尤其在企业工程项目里,“先建模型&…

阅读更多 →
WASI 0.3.1 实战指南:WebAssembly服务端接口演进与工程落地 2026/8/31 11:04:16

WASI 0.3.1 实战指南:WebAssembly服务端接口演进与工程落地

之前在做 WebAssembly 服务端落地时,经常被问到同一个问题:浏览器里的 Wasm 模块能力很强,为什么一到服务端,连读取文件这种基础操作都要反复折腾?这背后其实不是 Wasm 本身的问题,而是缺少一套被各运行时共…

阅读更多 →
JIT-Agent:动态生成智能体框架,让大模型自主规划工具与执行路径 2026/8/31 11:04:16

JIT-Agent:动态生成智能体框架,让大模型自主规划工具与执行路径

最近在做 Agent 类项目时,我越来越明显感受到一个痛点:很多团队把智能体流程写成了“流水线死代码”。任务进来后,先调用哪个模型、使用哪些工具、按什么顺序执行,几乎全部在代码里固定死。一旦业务需求变化,就要改代码…

阅读更多 →
AI Agent玩开放世界游戏为何遭遇黑屏?多模态感知闭环的工程陷阱 2026/8/31 10:59:12

AI Agent玩开放世界游戏为何遭遇黑屏?多模态感知闭环的工程陷阱

最近,一段“Neuro玩《上古卷轴》”的直播录像,在AI社区里持续发酵。画面里,一个叫Neuro的AI直播角色被要求操作《上古卷轴5:天际》,游戏进行到一半,屏幕骤然变黑。对观众来说,这是一个有趣的直播…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞