Podman 6:新的双用途 MSI 安装程序详解

从历史上看,Windows 安装程序需要管理员权限,并且能够借助虚拟化提供商(如 WSL 或 Hyper-V)为宿主进行配置。随着此次最新版本的发布,我们对 Windows 安装体验进行了全面重构,以更注重为企业用户提升使用便捷性,并为维护人员简化代码。

无需管理员权限?没问题!

在 Podman 6 中,面向 Windows 用户的重磅新功能,就是无需管理员权限即可安装 Podman。

在之前的版本中,安装程序是一个全局性的软件包,需要具备高权限才能将文件解压至受保护的目录, 例如 C:\Program Files。这对企业环境来说,是一个巨大的障碍。

全新安装程序支持按用户安装。它会直接安装到当前用户的文件夹中,并采用 HKCU 注册表而非 HKLM,使无权限的用户也能独立快速上手并开始使用。 同时,我们也支持按机器安装,不过默认情况下仍以按用户安装为主。

从 EXE 软件包到双用途 MSI 包

我们已从分发复杂的 .exe 软件包,转型为精简高效的双用途安装包 (.msi)。

此前的软件包主要用于自动化部署 WSL2 或 Hyper-V,而这一功能原本难以实现自动测试,甚至曾多次出现故障。 通过改用单个 .msi 包,我们简化了代码库,并提供了一种标准的安装格式,使其与现代 Windows 管理工具更加契合。

升级注意事项:由于本次是安装程序架构的根本性变革,新 .msi 包无法对基于 .exe 的旧版进行“无缝”的原位升级。在安装 Podman 6 之前,您需要先卸载旧版 Podman。

不过请放心,您的 Podman 数据和机器配置在卸载过程中都能完好保存。

简化安装逻辑

我们已移除了虚拟化提供商(WSL2 和 Hyper-V)的自动安装功能。虽然这听起来像是功能上的缩减,但实际上却大幅提升了系统的可靠性:

将本应归属的逻辑集中起来:虚拟化设置的复杂逻辑已从安装程序代码中分离出来, 纳入 Podman 机器初始化命令中,由 Podman 团队更好地利用 Go 语言进行维护。

减少摩擦:将该逻辑从安装程序中移除,消除了一个在我们的 CI/CD 环境中根本无法测试的错误类别。

支持社区包管理器

我们深知,许多 Windows 用户根本不会使用独立的安装程序,而是更倾向于使用诸如…之类的工具。scoop, 巧克力味, 或赢G等作为我们重构工作的一部分, 我们已确保新安装程序能与这些第三方工具良好兼容。

一如既往,我们非常期待听到您的反馈。 如果您在使用过程中遇到任何问题,或对提升 Windows 体验有其他改进建议,请加入我们的对话:GitHub 通过参与一个 讨论 或打开一个 问题.

参考文献github.com/podman-container-tools/podman/issues/25723

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论