虚拟机也能"秒开"?smolvm让我重新认识了轻量级虚拟化
用过Proxmox和ESXi的人都知道,启动一个虚拟机少说十几秒,配置高的可能要等半分钟。但最近GitHub上一个叫smolvm的项目,号称冷启动时间不到1秒,而且跨平台支持macOS、Linux和Windows。
smolvm是什么
简单说,smolvm是一个CLI工具,让你在本地管理和运行自定义Linux虚拟机。核心卖点是三个:亚秒级冷启动、跨平台、弹性内存使用。
它的底层基于KVM(Linux)和Apple Hypervisor(macOS),用Rust写的,性能不错。最酷的功能是能把一个完整的状态化虚拟机打包成单个文件(.smolmachine),然后在任何支持的平台上解压运行。
实际体验
我试了一下,在M2 MacBook Pro上用smolvm启动一个Alpine Linux VM,从敲命令到shell可用大概0.8秒。对比VMware Fusion启动同一个镜像要12秒,差距很明显。
安装也很简单:
curl -sSL https://smolmachines.com/install.sh | bash
然后一条命令就能跑:
smolvm machine run --net --image alpine -- sh -c "echo hello"
适合什么场景
- CI/CD——每次构建用一个干净的VM,不怕环境污染,而且启动快不会拖慢流水线
- 开发测试——快速拉起不同环境测试兼容性,用完即弃
- 安全沙箱——运行不受信任的代码,VM级别隔离比容器更安全
- AI Agent——给AI agent提供隔离的执行环境,每个任务一个独立VM
踩坑记录
- Windows支持有限——需要开启Windows Hypervisor Platform功能,部分老旧机器不支持
- 网络配置——跨平台的网络桥接配置还有坑,macOS上需要额外授权
- 镜像生态——目前官方只提供Alpine和Debian的基础镜像,其他发行版需要自己打包
总结
smolvm不是要替代Proxmox或ESXi,它的定位更像Docker的VM版——轻量、快速、适合开发和CI场景。如果你受够了Docker的隔离性问题,又嫌传统VM太重,smolvm值得一试。GitHub:https://github.com/smol-machines/smolvm
文章评论