通过 Podman Desktop 使用 Podman Quadlets
Skip to main content
podman desktopDocumentationDownloadsCommunity
Resources
Blog Download Search All blog posts
2025
- Configure a mirror registry
- Podman Desktop 1.17 Release
- Podman Quadlets with Podman Desktop
- Podman Desktop 1.16 Release
- Podman Desktop BootC extension 1.6 Release
2024
- Using CNCF projects with Podman Desktop
- Podman Desktop 1.15 Release
- Podman AI Lab - For developers to build AI Applications with LLMs running locally
- Podman Desktop + CNCF - Community Driven Move
- Creating a MicroShift bootable image with Podman Desktop
- Podman Desktop 1.14 Release
- Introduction to Podman Desktop extensions
- Podman Desktop 1.13 Release
- Build your Kubernetes application with Podman Desktop
- Podman Desktop 1.12 Release
- Using RHEL as a WSL podman machine
- Podman Desktop 1.11 Release
- Podman Desktop 1.10 Release
- Podman Desktop 1.9 Release
- Podman Desktop 1.8 Release
- Podman Desktop Wins 2024 DEVIES Award
- Unlock WebAssembly on macOS & Windows
- Podman Desktop 1.7 Release
- Getting started with Compose on Podman Desktop
2023
- Podman Desktop 1.6 Release
- Share your local podman images with the Kubernetes cluster
- Podman Desktop 1.5 Release
- Podman Desktop 1.4 Release
- Podman Desktop 1.3 Release
- Podman Desktop 1.2 Release
- Podman Desktop 1.1 Release
- Podman Desktop 1.0 Release
- Release Notes - Podman Desktop 0.15
- Setting up and running a Kubernetes cluster locally with Podman Desktop
- Release Notes - Podman Desktop 0.14
- Release Notes - Podman Desktop 0.13
- 5 things to know about Podman Desktop for a Docker user
- Release Notes - Podman Desktop 0.12
- Release Notes - Podman Desktop 0.11
2022
通过 Podman Desktop 使用 Podman Quadlets
2025年1月29日 · 阅读时长 4 分钟
Axel Stefanini
软件工程师
容器通常部署在 Kubernetes 集群中。但是,对于较小规模的用例,例如在单节点服务器上或在开发过程中,Kubernetes 可能显得过于繁琐。
那么,对于运行具有多个交互容器的自治应用程序来说,有没有更轻量级的解决方案呢?
在本博客中,我们将深入探讨什么是 Quadlets,它们的优势,以及如何在 Podman Desktop 中使用它们。
什么是 Quadlets?
Podman Quadlets 允许你使用 systemd1 以声明方式管理容器。 从 4.4 版本开始,Podman 可以通过 systemd 创建、启动和管理容器(包括拉取镜像、创建卷和管理 Pod)。
Quadlets 是简化的配置文件——通过其特定的扩展名(例如 *.container
、*.pod
或 *.image
)来识别,这些文件在启动期间或使用 systemctl daemon-reload
命令重新加载守护程序时进行处理。
Quadlets 生成等效的 systemd 单元文件,从而简化了容器管理过程。
为什么要使用 Quadlets?
- 声明式配置:与 Compose 或 Kubernetes 清单类似,Quadlets 允许你声明想要运行的内容,从而简化了工作负载设置。
- 紧密的系统集成:Quadlets 符合 Podman 与 Linux 无缝集成的理念,利用 systemd 的进程管理能力。
- 易于自动化:Quadlets 可以轻松地配置容器在启动时启动,在失败时重新启动等等。
示例:用于 Nginx 的 Quadlet 文件
以下是一个 nginx.container
Quadlet 文件的示例,该文件在启动时启动一个 Nginx 容器:
~/.config/containers/systemd/nginx.container
# nginx.container[Container]ContainerName=nginxImage=nginxPublishPort=80:8080[Service]Restart=always
此配置确保容器在停止时自动重新启动,并公开端口 8080。
在 Podman Desktop 中使用 Podman Quadlet 扩展
由于虚拟化环境(例如 WSL 或 Hyper-V),在非 Linux 平台上直接管理 Quadlets 可能具有挑战性。 幸运的是,Podman Desktop 扩展 Podman Quadlet 简化了此过程,使你可以直观地列出、生成和编辑 Quadlets。
扩展的主要特性
- 与 Podlet 集成:从现有的 Podman 对象生成 Quadlets 2。
- Quadlet 管理 UI:提供了一个专用界面来列出、编辑、删除、启动和停止 Quadlets。
- 日志查看器:使用 journalctl 获取和显示 systemd 日志以进行故障排除。
安装
如果你已经拥有最新版本的 Podman Desktop,则可以单击此处安装 Podman Quadlet 扩展。 或者,导航到 Podman Desktop 中的“Extensions”页面进行安装。
列出 Quadlets 📋
在“Podman Quadlet”页面上,你可以查看 Podman 机器上所有可用的 Quadlet。 要更新列表,请单击刷新。
在 Podman Desktop 中,你可以看到 Quadlet 管理的容器使用专用图标。
生成 Quadlets 🔨
要从现有容器生成 Quadlet,你需要安装 Podlet。 该扩展简化了安装。
使用以下方式之一安装 Podlet:
- 转到设置 > CLI 工具,然后使用 Podman Quadlet 扩展安装 Podlet。
- 从其 GitHub 发布页面 手动下载 Podlet。
示例:生成容器 Quadlet
- 使用 Podman 启动一个容器:
podman run --name nginx-demo -d-p80:8080 nginx
- 在 Podman Desktop 中,在“容器”页面上找到你的容器。
- 单击溢出菜单图标,然后选择生成 Quadlet。
- 单击生成以完成 Quadlet。
- 可选:编辑 Quadlet 配置详细信息。
- 点击 Load into machine。
恭喜 🎉 你创建了你的第一个 Quadlet!
编辑 Quadlets 🖊
单击 Quadlet STATUS 图标以查看其详细信息页面,该页面具有三个选项卡:
- Generated:查看 Podman 生成的 systemd 单元(只读)。
- Source:直接编辑 Quadlet 文件。
- Logs:使用 journalctl 监控服务的日志。
你可以更改 Quadlet 的源文件,并根据需要应用更新。
查看 Quadlet 日志 📜
由于 Quadlet 的相应资源由 systemd 管理,因此我们可以使用 journalctl 访问相应单元的日志。
结论
Podman Quadlets 提供了一种强大的方式,可以使用 systemd 以声明方式管理容器,从而弥合了轻量级容器管理与 Kubernetes 等完整编排工具之间的差距。
借助 Podman Desktop 中的 Podman Quadlet 扩展,用户可以获得一个方便的界面来直观地管理 Quadlets,从而降低了复杂性并节省了时间。
立即试用,简化你的容器工作流程!
脚注
- https://docs.podman.io/en/latest/markdown/podman-systemd.unit.5.html ↩
- https://github.com/containers/podlet ↩
标签:
Newer postPodman Desktop 1.17 ReleaseOlder postPodman Desktop 1.16 Release
Documentation
Links
We are a Cloud Native Computing Foundation sandbox project.
© Copyright Podman Desktop Contributors 2025. © 2025 The Linux Foundation. All rights reserved.
The Linux Foundation has registered trademarks and uses trademarks. For a list of trademarks of The Linux Foundation, please see our Trademark Usage page.