11.4. 与 podman generate systemd 命令相比,使用 Quadlets 的优点


您可以使用 Quadlets 工具,它描述了如何以类似于常规 systemd 单元文件的格式运行容器。

注意

Quadlet 从 Podman v4.6 开始提供。

与使用 podman generate systemd 命令生成单元文件相比,Qadlets 有很多优点,例如:

  • 易于维护 :容器描述侧重于相关的容器细节,并隐藏在 systemd 下运行的容器的技术细节。
  • 自动更新 :在更新后,Quadlets 不需要手动重新生成单元文件。如果发布了新版本的 Podman,则在 systemclt daemon-reload 命令执行时会自动更新您的服务,例如在引导时。
  • 简化的工作流 :由于简化的语法,您可以从头开始创建 Quadlet 文件,并在任何地方部署它们。
  • 支持标准的 systemd 选项 :Qadlet 使用新表扩展了现有的 systemd-unit 语法,例如,配置容器的表。
注意

Quadlet 支持 Kubernetes YAML 功能的子集。如需更多信息,请参阅 支持的 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
  • Network units: 用来创建可在 .container.kube 文件中引用的 Podman 网络。

    • 文件扩展名:.network
    • 部分名称:[Network]
    • 必填字段:无
  • Volume units :用来创建可在 .container 文件中引用的 Podman 卷。

    • 文件扩展名:.volume
    • 部分名称:[Volume]
    • 必填字段:无
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat