Podman - ポッド
ナビゲーションに移動
検索に移動
概要
ポッドの管理 (Podman podサブコマンド)
Podman podサブコマンドは、Podmanでポッドを管理するために使用する。
これらのコマンドとオプションを使用することにより、Podmanでポッドを効果的に管理することができる。
ポッドは複数のコンテナをグループ化して、それらを1つの単位として扱うことができるため、マイクロサービスアーキテクチャの実装やアプリケーションの構造化に役立つ。
新規ポッドの作成
podman pod create
コマンドのオプションを以下に示す。
- --name
- ポッド名を指定する。
- -p または --publish
- ポートマッピングを設定する。
- --infra=<true または false>
- infraコンテナを作成するオプションである。(デフォルトは
true
)- trueを指定する場合は、infraコンテナを作成する。
- falseを指定する場合は、infraコンテナを作成しない。
- --infra-command <コマンド>
- infraコンテナで実行するコマンドを指定する。
- --infra-image <イメージ名>
- infraコンテナに使用するイメージを指定する。
- --cgroup-parent <親cgroup名>
- 親のcgroupを指定する。
- --label
- ポッドにラベルを追加する。
- --network <ネットワークモード>
- ポッドのネットワークモードを指定する。
- --share <名前空間名>
- 名前空間の共有を指定する。
- 例: ipc、net等
# 例 podman pod create --name <ポッド名> -p 8080:80
既存ポッドの一覧の表示
# 例 podman pod list または podman pod ls
停止しているポッドの起動
# 例 podman pod start <ポッド名>
実行中のポッドの停止
# 例 podman pod stop <ポッド名>
ポッドの再起動
# 例 podman pod restart <ポッド名>
ポッドの削除
# 例 podman pod remove <ポッド名> または podman pod rm <ポッド名>
ポッドの詳細情報の表示
# 例 podman pod inspect <ポッド名>
ポッド内で実行中のプロセスを表示
# 例 podman pod top <ポッド名>
ポッドの一時停止
# 例 podman pod pause <ポッド名>
一時停止したポッドを再開
# 例 podman pod unpause <ポッド名>
ポッドのリソース使用統計を表示
# 例 podman pod stats
停止している全てのポッドを削除
# 例 podman pod prune
ネットワークモード
podman pod create
コマンドの--network
オプションで指定できるネットワークモードを、以下に示す。
これらのネットワークモードを使用することにより、ポッドのネットワーク構成を柔軟に設定することができる。
選択するモードは、セキュリティ要件、パフォーマンスニーズ、アプリケーションのアーキテクチャなどに応じて決定する必要がある。
- bridge (デフォルト)
- ポッドは独立したネットワーク名前空間を持ち、仮想イーサネットペアを通じてホストのデフォルトのbridgeネットワークに接続される。
- 例:
podman pod create --network bridge
- host
- ポッドはホストのネットワーク名前空間を直接使用する。
- ホストのネットワークインターフェースに直接アクセスできるため、パフォーマンスが向上するが、セキュリティリスクも高まる。
- 例:
podman pod create --network host
- slirp4netns
- ルートレス (非特権) モードで実行する際に使用される。
- ユーザ名前空間内でネットワークを仮想化する。
- 例:
podman pod create --network slirp4netns
- none
- ポッドに対してネットワークインターフェースを作成しない。
- 完全に隔離されたネットワーク環境が必要な場合に使用する。
- 例:
podman pod create --network none
- カスタムネットワーク
podman network create
コマンドで作成したカスタムネットワークを指定することができる。- 例:
podman pod create --network my_custom_network
- container:<コンテナID または コンテナ名>
- 既存のコンテナのネットワーク名前空間を使用する。
- 例:
podman pod create --network container:my_existing_container
- ns:<既存のネットワーク名前空間名>
- 既存のネットワーク名前空間を直接指定する。
- 例:
podman pod create --network ns:/var/run/netns/my_netns
- private
- ポッドに対して新しい独立したネットワーク名前空間を作成するが、外部ネットワークには接続しない。
- 例:
podman pod create --network private