Podman Desktop 1.0 发布:对 Docker Desktop 的挑战

501 阅读3分钟

RedHat 赞助的开源项目 Podman Desktop 已全面上市,其功能包括构建和运行容器、在本地运行 Kubernetes 以及连接和部署到远程 OpenShift 集群,其中 OpenShift 是 Red Hat 的 Kubernetes 发行版。

“使用像 Podman Desktop 这样的 UI 进行容器管理的主要优势在于,它简化了使用容器的过程,特别是对于企业开发人员而言,”产品经理 Stevan Le Meur 在介绍该版本的帖子中说。使用 Kubernetes 时尤其如此,因为它是使用Kind内置的,Kind 是一种用于运行本地 Kubernetes 集群的工具。该工具还与 OpenShiift Local 集成。

Podman Desktop 还可以从多个注册表(包括 Docker Hub)拉取、标记和推送容器映像。另一个功能是内置终端允许 ssh(安全外壳)访问容器。支持扩展,包括对为 Docker Desktop 构建的用户界面扩展的一些支持。

Stevan Le Meur

Podman 本身是一个 Linux 命令行工具,用于拉取容器镜像并运行它们,其命令在很大程度上与 Docker 容器引擎兼容。

Podman 可以由非特权用户运行,不需要守护进程。Podman 也可以在 Mac 和 Windows 上运行,但通过运行嵌入式 Linux 来工作,在 Mac 上使用 QEMU 虚拟机,在 Windows 上使用 Linux 子系统。

Podman 的无守护进程架构具有安全优势,使其适合在生产环境中使用——尽管 Docker 也可以无根运行。

Podman 和 Podman Desktop 不如 Docker 和 Docker Desktop 出名,但在 2021 年 8 月,Docker Desktop 成为企业的付费产品(以前是免费的)时,人们对 Docker 替代品的兴趣开始有所增加。

话又说回来,Docker 从那时起就在 Desktop 上投入了精力,推出了 Dev Environments 等新功能,让开发人员可以使用他们需要的工具和代码来配置环境。Docker Desktop 扩展允许第三方构建与其他产品集成或添加新功能的插件。

还有 Docker Scout,它分析容器镜像的漏洞。Docker Desktop 捆绑了本地 Kubernetes,可以选择在启动时启动单节点集群。

Podman Desktop 的免费特性很有吸引力,不仅可以降低成本,还可以最大程度地减少管理许可证的摩擦。然而,与更成熟的 Docker 是一个挑战。

但也存在一些小问题,包括 Visual Studio Code Docker 扩展无法与 Podman 一起正常工作。根据 GitHub 评论,“目前唯一的选择是降级 Docker 扩展。快速修复是可能的……但 Docker 扩展团队选择为 podman 提供完全明确的支持(目前尚未给出 ETA)。”

Hacker News 上的一位开发人员说:“我们是一家 Podman 商店。Podman 本身工作正常,但对于 Compose,我们有点不得不使用 docker-compose(并且很快就会使用“docker compose”,因为前者在一周内被弃用)。当我将 Compose 文件提供给 podman compose 时,我发现了几个主要和次要的问题。”

选择使用 Docker Desktop 的免费替代是 Suse 的 Rancher Desktop。