ARTICLE DETAIL

资讯详情

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

3步跑通Daytona沙箱:AI代码执行快速上手

3步跑通Daytona沙箱:AI代码执行快速上手 3步跑通Daytona沙箱AI代码执行快速上手【免费下载链接】daytonaDaytona is a Secure and Elastic Infrastructure for Running AI-Generated Code项目地址: https://gitcode.com/GitHub_Trending/dayt/daytona当你需要把一段 AI Agent 生成、不确定能不能信的代码交给机器跑的时候多半不敢直接在本机执行。常规思路是把它扔进一个隔离沙箱里跑只让它碰到该碰的资源——Daytona就是干这个的开源项目为一段 AI 生成代码在 90 毫秒内拉起一个独立沙箱环境。这个环境不只是一个隔离的容器每个沙箱拥有独立内核、文件系统与网络栈vCPU、内存、磁盘单独分配状态可以跨会话保留Python、TypeScript、JavaScript 代码可以直接跑整套流程其实就是三个角色配合SDK 发请求、控制面调度资源、计算面把沙箱拉起来。下面直接上手。 三步跑起来创建第一个沙箱并执行代码前置条件就两件在官方站点注册账号、在 Dashboard 里拿一个 API Key以及一台能装 Python 的机器。然后分三步。1. 安装 SDK 并准备好 Key# 安装官方 Python SDKKey 是一串字符串建议用环境变量注入 pip install daytona装完命令行客户端就就绪了这个 Key 会在下一步用来做接口鉴权。2. 非交互式地创建沙箱创建过程只需要一次create()调用不用进终端逐项手工配置# 初始化客户端向平台发起创建沙箱请求 from daytona import Daytona, DaytonaConfig daytona Daytona(DaytonaConfig(api_keyYOUR_API_KEY)) sandbox daytona.create() print(sandbox.id)运行后会打印出一个沙箱 ID相当于拿到了房间的钥匙——沙箱已经就位内核和磁盘都是现成的。3. 在沙箱里执行代码并取回结果# 在沙箱内执行一行 Python并把输出取回本地 response sandbox.process.code_run(print(Hello Daytona!)) print(response.result)终端会打印Hello Daytona!说明代码跑在隔离沙箱里而不是本机。TypeScript 版同理npm install daytona/sdk之后 API 形态与 Python 几乎一一对应。 拆解设计沙箱的隔离到底来自哪里创建沙箱很像从预制模板里开一间房房间户型由平台提前装好——内核、磁盘、网络全都接好了你调用create时系统只是从货架上取一间再递给你钥匙没有现场施工环节这也是 90ms 级速度的底气。Daytona 把系统拆成三个平面分工写在 README.md 的架构章节里组成部分职责类比Interface plane接口面提供 SDK、REST API、CLI 等客户端入口前台接单并递钥匙Control plane控制面编排所有沙箱操作创建、销毁、调整物业系统决定给你哪间房Compute plane计算面实际运行并管理沙箱实例房间本体代码在这里跑换句话说SDK 对话的是前台而不是房间本身。官方提供的工具链也分成四类Platform组织管理、API Key、资源限额、审计日志Sandboxes环境配置、快照、声明式构建、VolumeAgent tools进程与代码执行、文件操作、Git 操作、MCP serverHuman toolsWeb 终端、SSH、VNC、预览页面你会发现隔离不是容器里跑个进程而是独立内核、独立网络的完整虚拟电脑这也是为什么敢直接放不可信代码进来。️ 调配置设置资源配额与网络策略沙箱跑起来之后日常最常碰的是几个开关。官方文档把它们分好类了下表是提炼版具体数值以官方文档的 Limits、Network limits 页面为准配置项作用默认示例基础镜像决定沙箱初始系统与预装语言Python / TS / JS 官方镜像python资源配额单个沙箱的 vCPU、内存、磁盘按实例分配受平台限额约束2 vCPU / 4GB网络策略控制沙箱对外出流量平台默认限制出站白名单快照 Snapshot保存沙箱文件系统状态不保存销毁前存档下次会话恢复Volume挂载持久化外部存储不挂载跨沙箱复用的数据两个值得试的场景用快照保存状态让环境不丢沙箱随手可销毁但环境搭建很贵。销毁前先对当前状态打个快照下次基于快照新建装好的包、改过的文件原样回来。再配合 Volume连需要跨多个沙箱共享的数据都有了去处。绕过 SDK 直接调 REST API如果你的集成场景不想依赖 SDK用一条 HTTP 请求也能创建沙箱# 直接 POST 创建沙箱不经过 SDK curl -X POST https://app.daytona.io/api/sandbox \ -H Authorization: Bearer YOUR_API_KEY \ -H Content-Type: application/json \ -d {}返回成功即沙箱已创建响应 JSON 里的 ID 可直接用于后续的文件操作和进程执行。⚠️ 避坑指南新手高频问题四问问题回答README 写着不再维护还能用吗能用。自 2026 年 6 月起核心开发转入私有代码库但仓库保持公开可自由使用、fork 和二次开发现有功能不受影响。不想写代码能不用 SDK 管理沙箱吗可以。CLI 一条daytona create就能建沙箱也可以直接 POST REST API入口不同、结果一致。销毁沙箱后环境就没了不一定。销毁前用快照保存环境下次从快照恢复需要跨沙箱保留的数据放 Volume。沙箱支持哪些语言官方支持 Python、TypeScript、JavaScript且有预构建基础镜像不用自己搭环境。 找资源文档与源码入口仓库内的核心内容是项目说明与快速上手指引想继续深挖看这几处就够了项目介绍、功能矩阵与多语言 Quick StartREADME.mdSDK 与 API 客户端包说明Python、TypeScript、Ruby、Go、JavaREADME.md 的 Client libraries 章节克隆源码到本地git clone https://gitcode.com/GitHub_Trending/dayt/daytona品牌素材黑白 Logo 源文件assets/images/沙箱跑起来之后剩下的事就是给你的 AI Agent 接上这条执行通道——从第一行code_run开始都是你自己的业务了。【免费下载链接】daytonaDaytona is a Secure and Elastic Infrastructure for Running AI-Generated Code项目地址: https://gitcode.com/GitHub_Trending/dayt/daytona创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表