13.4. 与 podman generate systemd 命令相比,使用 Quadlets 的优点
您可以使用 Quadlets 工具,它描述了如何以类似于常规 systemd 单元文件的格式运行容器。
注意
Quadlet 可以从 Podman v4.6 开始。
与使用 podman generate systemd 命令生成单元文件相比,Qadlets 有很多优点,例如:
-
易于维护 :容器描述侧重于相关的容器细节,并隐藏在
systemd下运行的容器的技术细节。 -
自动更新 :仲裁不需要在更新后手动重新生成单元文件。如果发布了一个较新版本的 Podman,您的服务会在运行
systemctl daemon-reload命令时自动更新,例如在引导时。 - 简化的工作流 :由于简化的语法,您可以从头开始创建 Quadlet 文件,并在任何地方部署它们。
- 支持标准的 systemd 选项 :Qadlet 使用新表扩展了现有的 systemd-unit 语法,例如,配置容器的表。
注意
Quadlet 支持 Kubernetes YAML 功能的子集。您可以使用以下工具之一生成 YAML 文件:
-
podman:
podman generate kube命令 -
OpenShift: 带有
--dry-run选项的oc generate命令 -
kubernetes: 带有
--dry-run选项的kubectl create命令
Quadlet 支持这些单元文件类型:
Container units : 用来通过运行
podman run命令管理容器。-
文件扩展名:
.container -
部分名称:
[Container] -
必填字段:描述服务运行的容器镜像的
Image
-
文件扩展名:
Kube units: 用来通过运行
podman kube play命令来管理 Kubernetes YAML 文件中定义的容器。-
文件扩展名:
.kube -
部分名称:
[Kube] -
必填字段:定义 Kubernetes YAML 文件路径的
Yaml
-
文件扩展名:
网络单元 :用于创建可能在
.container或.kube文件中引用的 Podman 网络。-
文件扩展名:
.network -
部分名称:
[Network] - 必填字段:无
-
文件扩展名:
卷快照 :用于创建可能在
.container文件中引用的 Podman 卷。-
文件扩展名:
.volume -
部分名称:
[Volume] 必填字段:无
如需更多信息,请参阅系统中的
podman-systemd.unit (5)手册页。
-
文件扩展名: