Red Hat Training

A Red Hat training course is available for RHEL 8

第5章 Pod の使用

コンテナーは、Podman、Skopeo、および Buildah のコンテナーツールで管理できる最小単位です。Podman Pod は、1 つ以上のコンテナーのグループです。Pod の概念は Kubernetes により導入されました。Podman Pod は Kubernetes 定義に似ています。Pod は、OpenShift または Kubernetes 環境で作成、デプロイ、管理できる最小のコンピュート単位です。すべての Podman Pod には infra コンテナーが含まれます。このコンテナーは Pod に関連付けられた namespace を保持し、Podman が他のコンテナーを Pod に接続できるようにします。これにより、Pod を稼働したまま、Pod 内のコンテナーの起動や停止が可能になります。デフォルトの infra コンテナーは、registry.access.redhat.com/ubi8/pause イメージ上にあります。

5.1. Pod の作成

以下の手順では、コンテナーが 1 つ含まれる Pod を作成する方法を説明します。

前提条件

  • Podman ツールがインストールされている。

    #  yum module install -y container-tools

手順

  1. 空の Pod を作成します。

    $ podman pod create --name mypod
    223df6b390b4ea87a090a4b5207f7b9b003187a6960bd37631ae9bc12c433aff
    The pod is in the initial state Created.

    Pod の初期状態は Created です。

  2. 必要に応じて、すべての Pod を一覧表示します。

    $ podman pod ps
    POD ID         NAME    STATUS    CREATED                  # OF CONTAINERS   INFRA ID
    223df6b390b4   mypod   Created   Less than a second ago   1                 3afdcd93de3e

    Pod にはコンテナーが 1 つあることに注意してください。

  3. 必要に応じて、関連付けられている全 Pod およびコンテナーを一覧表示します。

    $ podman ps -a --pod
    CONTAINER ID  IMAGE                 COMMAND  CREATED                 STATUS   PORTS  NAMES               POD
    3afdcd93de3e  registry.access.redhat.com/ubi8/pause            Less than a second ago  Created         223df6b390b4-infra  223df6b390b4

    podman ps コマンドからの Pod ID と podman pod ps コマンドの Pod ID が一致することが確認できます。デフォルトの infra コンテナーは registry.access.redhat.com/ubi8/pause イメージをベースとしています。

  4. mypod という名前の既存 Pod 内で、名前が myubi のコンテナーを実行します。

    $ podman run -dt --name myubi --pod mypod registry.access.redhat.com/ubi8/ubi  /bin/bash
    5df5c48fea87860cf75822ceab8370548b04c78be9fc156570949013863ccf71
  5. 必要に応じて、すべての Pod を一覧表示します。

    $ podman pod ps
    POD ID         NAME    STATUS    CREATED                  # OF CONTAINERS   INFRA ID
    223df6b390b4   mypod   Running   Less than a second ago   2                 3afdcd93de3e

    Pod にはコンテナーが 2 つあることが分かります。

  6. 必要に応じて、関連付けられている全 Pod およびコンテナーを一覧表示します。

    $ podman ps -a --pod
    CONTAINER ID  IMAGE                                       COMMAND    CREATED                 STATUS                     PORTS  NAMES               POD
    5df5c48fea87  registry.access.redhat.com/ubi8/ubi:latest  /bin/bash  Less than a second ago  Up Less than a second ago         myubi               223df6b390b4
    3afdcd93de3e  registry.access.redhat.com/ubi8/pause                                   Less than a second ago  Up Less than a second ago         223df6b390b4-infra  223df6b390b4

関連情報