Podman : Pod を作成する2025/10/31 |
|
Kubernetes でおなじみの Pod も Podman で作成可能です。 |
|
| [1] | Pod を作成してコンテナーを追加します。 |
|
# 空の pod を新規作成 # -p [バインドするポート] -n [pod の名前] dlp:~ # podman pod create -p 8081:80 -n test-pod 5825e1c598337220d236c371dbff6056cd3724fed04c8e4798a5ed5e73810b95 # 確認 dlp:~ # podman pod ls POD ID NAME STATUS CREATED INFRA ID # OF CONTAINERS 5825e1c59833 test-pod Created 10 seconds ago 9909957aac2e 1 # pod の詳細を表示 dlp:~ # podman pod inspect test-pod
[
{
"Id": "5825e1c598337220d236c371dbff6056cd3724fed04c8e4798a5ed5e73810b95",
"Name": "test-pod",
"Created": "2025-10-31T12:20:28.513332149+09:00",
"CreateCommand": [
"podman",
"pod",
"create",
"-p",
"8081:80",
"-n",
"test-pod"
],
"ExitPolicy": "continue",
"State": "Created",
"Hostname": "",
"CreateCgroup": true,
"CgroupParent": "machine.slice",
"CgroupPath": "machine.slice/machine-libpod_pod_5825e1c598337220d236c371dbff6056cd3724fed04c8e4798a5ed5e73810b95.slice",
"CreateInfra": true,
"InfraContainerID": "9909957aac2e74433eb2f533bfb9e4d01f39cbb44587e6ce9de67f1443449b55",
"InfraConfig": {
"PortBindings": {
"80/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "8081"
}
]
},
"HostNetwork": false,
"StaticIP": "",
"StaticMAC": "",
"NoManageResolvConf": false,
"DNSServer": null,
"DNSSearch": null,
"DNSOption": null,
"NoManageHostname": false,
"NoManageHosts": false,
"HostAdd": null,
"HostsFile": "",
"Networks": [
"podman"
],
"NetworkOptions": null,
"pid_ns": "private",
"userns": "host",
"uts_ns": "private"
},
"SharedNamespaces": [
"ipc",
"net",
"uts"
],
"NumContainers": 1,
"Containers": [
{
"Id": "9909957aac2e74433eb2f533bfb9e4d01f39cbb44587e6ce9de67f1443449b55",
"Name": "5825e1c59833-infra",
"State": "created"
}
],
"LockNumber": 12
}
]
dlp:~ # podman images REPOSITORY TAG IMAGE ID CREATED SIZE localhost/podman-pause 5.4.2-1755067447 fb2028d44a7e 52 seconds ago 722 kB docker.io/library/root-web latest 95306b8f2f91 41 minutes ago 439 MB srv.world/iproute latest b9d2eecf712e 59 minutes ago 386 MB srv.world/suse-nginx latest 2f5e96e113e4 2 hours ago 439 MB srv.world/suse-httpd latest 155ffb9ef27d 2 hours ago 393 MB registry.opensuse.org/opensuse/leap latest 004d9956dc10 2 weeks ago 118 MB docker.io/moby/buildkit buildx-stable-1 9403964920cf 3 weeks ago 228 MB docker.io/library/mariadb latest dfbea441e6fc 2 months ago 336 MB # コンテナーを起動して pod に追加する dlp:~ # podman run -dt --pod test-pod srv.world/suse-nginx 53923751c9b7de435bde975d41cfe0346e2e26ed9c0c7bac3fdfd70f56002dcddlp:~ # podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES aee01f7c4904 docker.io/moby/buildkit:buildx-stable-1 44 minutes ago Up 44 minutes buildx_buildkit_default 9909957aac2e localhost/podman-pause:5.4.2-1755067447 About a minute ago Up 10 seconds 0.0.0.0:8081->80/tcp 5825e1c59833-infra 53923751c9b7 srv.world/suse-nginx:latest /usr/sbin/nginx -... 10 seconds ago Up 10 seconds 0.0.0.0:8081->80/tcp adoring_hypatia # アクセス確認 dlp:~ # curl localhost:8081 Podman Test on Nginx # pod を停止する dlp:~ # podman pod stop test-pod test-pod # pod を削除する (コンテナーも含めて強制削除) dlp:~ # podman pod rm test-pod --force 5825e1c598337220d236c371dbff6056cd3724fed04c8e4798a5ed5e73810b95 |
| [2] | Pod の作成とコンテナーの追加を同時に実行することもできます。 |
|
dlp:~ # podman images REPOSITORY TAG IMAGE ID CREATED SIZE localhost/podman-pause 5.4.2-1755067447 fb2028d44a7e 2 minutes ago 722 kB docker.io/library/root-web latest 95306b8f2f91 43 minutes ago 439 MB srv.world/iproute latest b9d2eecf712e About an hour ago 386 MB srv.world/suse-nginx latest 2f5e96e113e4 2 hours ago 439 MB srv.world/suse-httpd latest 155ffb9ef27d 2 hours ago 393 MB registry.opensuse.org/opensuse/leap latest 004d9956dc10 2 weeks ago 118 MB docker.io/moby/buildkit buildx-stable-1 9403964920cf 3 weeks ago 228 MB docker.io/library/mariadb latest dfbea441e6fc 2 months ago 336 MB # [test-pod2] を新規作成して [srv.world/suse-nginx] コンテナーを追加する dlp:~ # podman run -dt --pod new:test-pod2 -p 80:80 -p 3306:3306 srv.world/suse-nginx 3632bf597fbf6295f59b9a88d4d54e8438b829b853d42d6ba16c46573272249cdlp:~ # podman pod ls POD ID NAME STATUS CREATED INFRA ID # OF CONTAINERS 5c6172d0c3dc test-pod2 Running 10 seconds ago 6466f9b9c815 2dlp:~ # podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES aee01f7c4904 docker.io/moby/buildkit:buildx-stable-1 45 minutes ago Up 45 minutes buildx_buildkit_default 6466f9b9c815 localhost/podman-pause:5.4.2-1755067447 21 seconds ago Up 21 seconds 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp 5c6172d0c3dc-infra 3632bf597fbf srv.world/suse-nginx:latest /usr/sbin/nginx -... 21 seconds ago Up 21 seconds 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp recursing_ptolemy # [mariadb] コンテナーを起動して [test-pod2] に追加する dlp:~ # podman run -dt --pod test-pod2 -e MYSQL_ROOT_PASSWORD=Password mariadb 63a7d009e02dcadc34f10a2bdae589df4592a9544cf10fa9bbf7e83a46c23dfedlp:~ # podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES aee01f7c4904 docker.io/moby/buildkit:buildx-stable-1 46 minutes ago Up 46 minutes buildx_buildkit_default 6466f9b9c815 localhost/podman-pause:5.4.2-1755067447 About a minute ago Up About a minute 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp 5c6172d0c3dc-infra 3632bf597fbf srv.world/suse-nginx:latest /usr/sbin/nginx -... About a minute ago Up About a minute 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp recursing_ptolemy 63a7d009e02d docker.io/library/mariadb:latest mariadbd 8 seconds ago Up 9 seconds 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp fervent_goldstine
dlp:~ #
dlp:~ # curl dlp.srv.world Dockerfile Test on Nginx mariadb -u root -p -h dlp.srv.world -e "show variables like 'hostname';" Enter password: +---------------+-----------+ | Variable_name | Value | +---------------+-----------+ | hostname | test-pod2 | +---------------+-----------+ |
| Sponsored Link |
|
|