第 9 章 使用 pod
将相关容器分组到 pod 中,以便您可以共享命名空间和资源。您可以使用 OpenShift 或 Kubernetes 中最小计算单元的 pod 将多个容器作为一个单元进行管理。
9.1. 创建 pod 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要共享网络和存储资源,您可以在 pod 中添加容器。每个 Podman pod 都包括一个 infra 容器,用于管理命名空间,并允许其他容器连接、启动和停止,保持 pod 运行。
先决条件
-
container-tools元数据包已安装。
流程
创建空 pod:
$ podman pod create --name mypod 223df6b390b4ea87a090a4b5207f7b9b003187a6960bd37631ae9bc12c433aff The pod is in the initial state Created.pod 处于 Created 的初始状态。
可选:列出所有 pod:
$ podman pod ps POD ID NAME STATUS CREATED # OF CONTAINERS INFRA ID 223df6b390b4 mypod Created Less than a second ago 1 3afdcd93de3e请注意,pod 有一个容器。
可选:列出与其关联的所有 pod 和容器:
$ podman ps -a --pod CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES POD 3afdcd93de3e registry.access.redhat.com/ubi10/pause Less than a second ago Created 223df6b390b4-infra 223df6b390b4您可以看到
podman ps命令中的 pod ID 与podman pod ps命令中的 pod ID 匹配。默认 infra 容器是基于registry.access.redhat.com/ubi10/pause镜像的。在名为
mypod的现有 pod 中运行名为myubi的容器:$ podman run -dt --name myubi --pod mypod registry.access.redhat.com/ubi10/ubi /bin/bash 5df5c48fea87860cf75822ceab8370548b04c78be9fc156570949013863ccf71可选:列出所有 pod:
$ podman pod ps POD ID NAME STATUS CREATED # OF CONTAINERS INFRA ID 223df6b390b4 mypod Running Less than a second ago 2 3afdcd93de3e您可以看到 pod 有两个容器。
可选:列出与其关联的所有 pod 和容器:
$ podman ps -a --pod CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES POD 5df5c48fea87 registry.access.redhat.com/ubi10/ubi:latest /bin/bash Less than a second ago Up Less than a second ago myubi 223df6b390b4 3afdcd93de3e registry.access.redhat.com/ubi10/pause Less than a second ago Up Less than a second ago 223df6b390b4-infra 223df6b390b4