Ngrok产品与资源介绍
Ngrok官网提供了各类产品、资源及博客信息。其导航栏包含产品、交付、开发、连接性、娱乐、开发者、资源、博客等分类,如产品有网关、AI网关、共享本地主机等;开发者板块提供下载、文档、快速入门等内容;博客则有AI网关对Native Anthropic SDK的支持等文章。
将Kubernetes移植到浏览器
2026年6月30日,Sam Rose发布了将Kubernetes部分功能移植到TypeScript的成果webernetes,让在浏览器中运行集群成为可能。他在629个文件中提交了552次,生成近10万行代码,整个过程花了两个月时间。
Webernetes集群演示
演示展示的webernetes集群完全在浏览器中运行,能完成许多与真实Kubernetes集群相同的工作,如Pod生命周期管理、集群DNS和网络等。蓝色圆点代表Pod之间相互发送的请求。
关于Webernetes的疑问解答
有人问是否把Kubernetes编译成WebAssembly,答案是否定的。因为将整个Kubernetes编译成WebAssembly会导致传输数据达数兆字节,且Kubernetes调用了浏览器中不可用的系统级API,编译时会出错。
Webernetes的构成
webernetes是对Kubernetes的“kubelet”二进制文件进行部分移植,移植了几个Kubernetes“控制器”,基于浏览器实现容器网络接口和容器运行时,还有用于与集群交互的API。它有自己基于浏览器的镜像仓库,可使用TypeScript API定义镜像。
部署镜像与交互示例
展示了将镜像部署到集群和使用webernetes API与集群交互的代码示例,在webernetes仓库中有更多示例。webernetes旨在创建交互式的Kubernetes内容,并非适用于生产环境的发行版。
未来扩展计划
Sam Rose打算扩展webernetes以支持更多Kubernetes功能,目前它还不支持ConfigMaps、Secrets等功能。若开发者基于webernetes开发遇到不支持的功能,可联系他。
代码生成与审查
webernetes的几乎所有代码由大语言模型生成,Sam Rose认为该项目并非粗制滥造,他逐行审查了所有代码,并创建数百个测试确保其行为与真实集群一致。
审查代码的原因
大语言模型在移植代码方面存在问题,如走捷径、过于热心、内容缺失等。Sam Rose认为要对大语言模型移植的内容有信心,就需要审查其输出。
测试情况
为确保代码能正常工作,Sam Rose编写测试,让相同代码同时在webernetes和k3s集群上运行。webernetes有204个集成测试和1855个单元测试,大部分单元测试从Kubernetes的Go代码库移植过来。
审查和测试的作用
Sam Rose认为审查和测试足以避免粗制滥造。大语言模型可弥补人类的弱点,将自己的能力与大语言模型的优势结合,是职业生涯中可能性的一次大飞跃。
项目数据统计
展示了Webernetes每周代码行数统计、大语言模型令牌消耗随时间的变化、每周等效API大语言模型令牌成本等数据。早期工作在博客网站背后的仓库分支中进行,第一个提交到后来的仓库的代码是在4月21日。最后一周因开发演示应用投入大量令牌解决问题,令牌使用效率低。
结论与邀请
读者可观看Sam Rose和同事Ryan Blunden录制的系列视频,了解webernetes的开发过程。邀请大家试用webernetes,提交问题,有成果或问题可发邮件给Sam Rose,希望项目能蓬勃发展。