Turbo——Windows平台的容器化技术

2015年10月24日, 我依然怀念几年前使用云端软件平台的日子.

几年来, 那些功能相仿的软件们: 小白软件管家、ThinApp、PortableApps、Cameyo、Chocolatey...有的已经死透了, 有的假装自己还活着, 有的在理念上不合, 有的在技术上已经落后于时代, 想从中寻找一个云端软件平台的替代品, 却总是乘兴而来, 败兴而归. 这时才发现失去的, 才是最好的, 多么想回到那段时光, 只可惜我再也不能.

后来有一天, 我发现了Turbo, 这个和Docker十分相似的东西是我在Windows上安装Docker Toolbox时发现的, 当时Turbo的容器化技术不支持Windows 10系统, 于是我便一直惦念着, 直到最近几天再一次尝试使用, 不错, 现在它已经支持Windows 10了.

不得不说, 这可能是目前Windows平台上唯一可以在非服务器环境使用的容器化技术——微软自己搞的一套与Docker相关的服务目前还只能在Windows Server 2016上使用, 对于个人用户而言没有什么意义, 而Turbo使用的SVM引擎则可以很好的让你在任意的Windows平台上跨系统版本的使用应用程序, 并且各个应用程序被封装成镜像, 以容器的形式运行着, 这一切听着都是那么熟悉——简直和Docker的理念如出一辙.

慢慢地事情变得明朗起来了, 它其实就是我们熟悉的那套软件虚拟化技术(虽然从技术实现上不同), 现在你可以通过Turbo同时运行同一个软件的不同版本, 并且在运行完毕后可以将它们直接从你的系统上抹消掉——就好像它们从未存在过. 在实际地使用过程中, 你会发现虽然Turbo是用命令控制的, 但它设计得与Docker实在太相似了——简单而优雅, 看完Turbo的Take the tour后, 你会轻易地上手这个容器化工具.

事实上Turbo与其同个公司的另一项用于软件开发和测试的沙箱服务Spoon高度重合, 使得我们很难区分二者的界线, 但仅从容器化的角度来讲, 我们主要还是在使用Turbo, 尽管Spoon与其十分相似(不知道是不是历史原因比如服务分离所致, 网络上一些早先的介绍容器化的文章在提到Spoon时从不会提到Turbo), 甚至Turbo的引擎就叫做Spoon Virtual Machine Engine.

值得一提的是, Turbo不是开源软件, 且其部分功能还是收费的, 但它的PRO服务在价格和内容上还算是比较容易接受——每个月最低$9.95的费用(年费), PRO服务提供1TB的应用存储空间、离线使用程序、自定义安装程序、分享你的程序给协作者——差不多你想要的, 全都有了.

不过, 根据读者Jogger在评论中的反馈, 官方似乎在免费服务的说明中使用了有误导嫌疑的说辞, 暗示免费用户无法自行创建和发布镜像, 而实际情况则是免费用户完全可以进行这些操作(这样PRO就显得不那么必要了).

还有一件很重要的事是, 这个服务在大陆访问的速度可能会很慢, 所以也许你需要开启代理来加快速度, 我不知道它们的命令行工具里是否包含了使用系统的代理配置或独立的代理服务器设置选项, 自从我买了正版的Proxifier后就再也没有注意过这些了, 建议在Windows上搞开发的软件工程师们人手一个.

接下来我打算尝试去用Turbo的封装一些我常用的软件(目标是把目前机器上除Chrome和Steam授权的正版软件以外的普通应用程序全都容器化), 目前成功封装了一个64位版本的PotPlayer播放器, 仅供测试.

PS: Spoon.net在10月27日才正式宣布支持Windows 10(https://blog.spoon.net/windows-10-now-supported-by-spoon/).