「Podman - ポッド」の版間の差分

提供:MochiuWiki : SUSE, EC, PCB
ナビゲーションに移動 検索に移動
(ページの作成:「== 概要 == <br><br> == ポッドの管理 (Podman podサブコマンド) == Podman podサブコマンドは、Podmanでポッドを管理するために使用する。<br> これらのコマンドとオプションを使用することにより、Podmanでポッドを効果的に管理することができる。<br> <br> ポッドは複数のコンテナをグループ化して、それらを1つの単位として扱うことができるため、マイクロサ…」)
 
(文字列「__FORCETOC__」を「{{#seo: |title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki |keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,電気回路,電子回路,基板,プリント基板 |description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{…)
 
(同じ利用者による、間の2版が非表示)
1行目: 1行目:
== 概要 ==
== 概要 ==
Podmanのポッドは、1つ以上のコンテナをグループ化した論理的な単位である。<br>
ポッドとは、Kubernetesプロジェクトによって普及した概念であり、同じ名前空間とcgroup (リソース制約) を共有する1つ以上のコンテナのことである。<br>
<br>
これは、Kubernetesのポッドの概念に似ている。<br>
<br>
ポッドの特徴を以下に示す。<br>
* 共有ネームスペース
*: ポッド内のコンテナは、ネットワークやIPC (プロセス間通信) 等のリソースを共有する。
* ライフサイクル管理
*: ポッド内のコンテナは一緒に起動・停止する。
* ボリューム共有
*: ポッド内のコンテナ間でボリュームを共有できる。
<br>
ポッドを使用するメリットを以下に示す。<br>
* 密結合アプリケーション
*: 関連するコンテナをグループ化して、効率的に管理できる。
* リソース効率
*: 共有ネームスペースにより、リソースの効率的な利用が可能である。
* 簡易化された管理
*: 複数のコンテナを1つの単位として扱うことができる。
<br>
ポッドの使用例を以下に示す。<br>
* マイクロサービスアーキテクチャ
*: 関連するサービスをポッドとしてグループ化する。
* サイドカーパターン
*: メインアプリケーションと補助サービスを1つのポッドにする。
<br><br>
<br><br>


118行目: 144行目:
<br><br>
<br><br>


{{#seo:
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,電気回路,電子回路,基板,プリント基板
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux
|image=/resources/assets/MochiuLogo_Single_Blue.png
}}


__FORCETOC__
__FORCETOC__
[[カテゴリ:コンテナ]]
[[カテゴリ:コンテナ]]

2024年10月14日 (月) 10:34時点における最新版

概要

Podmanのポッドは、1つ以上のコンテナをグループ化した論理的な単位である。
ポッドとは、Kubernetesプロジェクトによって普及した概念であり、同じ名前空間とcgroup (リソース制約) を共有する1つ以上のコンテナのことである。

これは、Kubernetesのポッドの概念に似ている。

ポッドの特徴を以下に示す。

  • 共有ネームスペース
    ポッド内のコンテナは、ネットワークやIPC (プロセス間通信) 等のリソースを共有する。
  • ライフサイクル管理
    ポッド内のコンテナは一緒に起動・停止する。
  • ボリューム共有
    ポッド内のコンテナ間でボリュームを共有できる。


ポッドを使用するメリットを以下に示す。

  • 密結合アプリケーション
    関連するコンテナをグループ化して、効率的に管理できる。
  • リソース効率
    共有ネームスペースにより、リソースの効率的な利用が可能である。
  • 簡易化された管理
    複数のコンテナを1つの単位として扱うことができる。


ポッドの使用例を以下に示す。

  • マイクロサービスアーキテクチャ
    関連するサービスをポッドとしてグループ化する。
  • サイドカーパターン
    メインアプリケーションと補助サービスを1つのポッドにする。



ポッドの管理 (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