コンテナーイメージ関連
イメージの一覧
podman images
イメージの取得
podman pull {イメージ名}
デフォルトでは以下のレジストリからイメージ取得を行います。
- registry.access.redhat.com
- registry.redhat.io
- docker.io
イメージの削除
podman rmi {イメージ名/ID}
イメージからコンテナーの実行
podman run --restart=always -v {ホストディレクトリパス}:{コンテナーディレクトリパス} -p {ホストポート番号1}:{コンテナーポート番号1} -p {ホストポート番号2}:{コンテナーポート番号2} -t -i -d --network={ネットワーク名} --ip=192.168.100.2 --name {コンテナー名} {イメージ名/ID} {コマンド}
オプション
- ボリュームのマウント -v {ホストディレクトリパス}:{コンテナーディレクトリパス}
- ポートマッピング -p {ホストポート番号}:{コンテナーポート番号}
- Podmanネットワーク指定 --network={ネットワーク名}
- IPアドレスの指定 --ip={IPアドレス}
- コンテナ名 --name={コンテナ名}
イメージをファイルにエクスポート
podman save -o {出力先パス} {イメージ名/ID}
イメージファイルからインポート
podman load -i {イメージファイルパス}
イメージに対してタグを付ける
podman tag {イメージ名/ID} {イメージ名}
ネットワーク関連
ネットワークリスト
podman network ls
ネットワークの詳細
podman network inspect {ネットワーク名}
ネットワークの作成
podman network create --subnet=192.168.100.0/24 --gateway=192.168.100.254 {ネットワーク名}
# 192.168.100.1~192.168.100.253までをコンテナーが利用可能
# ホスト側の通信はゲートウェイの192.168.100.254となる
コンテナー操作関連
実行中のコンテナーの確認
# 実行中のコンテナーのみ
podman ps
# 終了したコンテナーを含む場合は、-a(--all)オプションで表示
podman ps -a
実行中のコンテナーでコマンドの実行
podman exec {コンテナー名/ID} {コマンド}
コンテナーからイメージの作成
podman commit {コンテナー名/ID} {イメージ名}
コンテナーの削除
podman rm {コンテナ名/ID}
コンテナーの停止
podman stop {コンテナー名/ID}
コンテナー内のファイルをホスト側にコピー
podman cp {ホストファイルパス} {コンテナー名/ID}:{コンテナーファイルパス}
コンテナー間のファイルコピー
podman cp {コピー元コンテナー名/ID}:{コピー元コンテナー側ファイルパス} {コピー先コンテナー名/ID}:{コピー先コンテナー側ファイルパス}
コンテナー内のファイルをホスト側にコピー
podman cp {コンテナー名/ID}:{コンテナーファイルパス} {ホストファイルパス}