
近日,Canonical公司正式推出Workshop工具,开发者只需一条命令即可快速搭建完整的开发环境。这些环境经过一次配置后,便能在不同机器上完美复现,从而确保开发机与部署流水线之间的工作流高度一致,同时大幅减少依赖管理所耗费的时间。
Canonical工程副总裁Jon Seager表示:“前沿开发者希望将精力集中在构建产品本身,而非纠缠于依赖项或工作站配置。Workshop允许开发者通过一个简洁的YAML文件定义环境,并自动拉取所需的精确依赖与组件,优雅地实现这一目标。此外,Workshop还能让团队内部代理工具的使用方式标准化且安全隔离。”
从“前沿”到“主流”的时间窗口不断缩短,开发者没有时间等待。然而,传统做法往往需要大量手动操作:既要配置所有需要的软件,又要确保它们能在本机无害且高效地运行。当团队成员需要在不同硬件上协作时,问题更加突出。
Workshop为开发环境带来了可组合性与可重复性。开发者只需在Workshop配置文件中添加Ollama、OpenCode、NVIDIA CUDA或AMD ROCm等SDK,即可一键拉取。环境创建、升级或销毁均可通过少数按键完成。
Workshop环境采用简洁的YAML文档定义,因此可以纳入版本控制并与项目贡献者分享。环境可通过一条命令轻松复现,并借鉴snapd思想设计了接口系统,简化了主机资源的分配。
在快速发展的代理型AI领域,团队需要强健的隔离能力,以确保能够高速开发而不会危害主机系统。Workshop的开发环境运行在非特权系统容器中,从而最大限度地减小工作负载的攻击面。
可重复性同样适用于安全方面。在Workshop中,SDK通过统一的接口请求资源访问权限(例如访问桌面以显示GUI应用,或从宿主机访问SSH代理)。安全不依赖于理解容器的单个协议,并且可以为AI代理实施严格的访问控制。
Canonical工程经理Dmitry Lyfar指出:“开发者的易用性不应意味着AI代理的易用性。这两个‘用户’群体之间天然存在张力,但Workshop通过严格执行访问控制解决了这一矛盾。资源分配在所有环境中保持一致且简单,从而最小化人为错误,同时非特权默认设置有效限制了工作负载的能力。”
Workshop的隔离并不意味着与硬件特定能力隔绝。Workshop摒弃了复杂的映射脚本和文件系统路径,转而提供标准化的方式来访问容器内的挂载点、设备和网络服务。
如果已有预制的SDK用于访问特定硬件,你可以将其直接纳入YAML中以优化工具链;若没有,你还可以为自己创建自定义SDK。
安装Workshop前,请确保你运行的是LXD 6.8或更新版本。
sudo snap install --channel=6/stable lxd
sudo snap install --classic workshop
想了解更多关于管理模块化工作区、浏览SDK商店或构建SDK的信息,请阅读Workshop官方文档。
关注微信号:智享开源 ,及时了解更新信息。
原文链接:https://ubuntu.com//blog/introducing-workshop-sandboxed-development-environments
你必须 登录 才能发表评论.
| 微信捐赠 | 支付宝捐赠 |
|---|---|
![]() |
![]() |
扫码关注公众号:智享开源

[blog_mailer_subscribe]
还没有任何评论,你来说两句吧!