Podman : Pod を作成する2026/01/09 |
|
Kubernetes でおなじみの Pod も Podman で作成可能です。 |
|
| [1] | Pod を作成してコンテナーを追加します。 |
|
root@dlp:~ #
vi /usr/local/etc/containers/containers.conf # 411行目 : 追記
infra_image = "k8s.gcr.io/pause:3.10.1"
# pause イメージを pull root@dlp:~ # podman pull --os=linux k8s.gcr.io/pause:3.10.1
# 空の pod を新規作成 # -p [バインドするポート] -n [pod の名前] root@dlp:~ # podman pod create -p 8081:80 -n test-pod WARN[0000] image platform (linux/amd64) does not match the expected platform (freebsd/amd64) c51cd8f528ae471a4bff77e2bb032dd9281ccce04f009d4edf9b0d7809b8b093 # 確認 root@dlp:~ # podman pod ls POD ID NAME STATUS CREATED INFRA ID # OF CONTAINERS c51cd8f528ae test-pod Created 18 seconds ago 314e9ddf5805 1 # pod の詳細を表示 root@dlp:~ # podman pod inspect test-pod
[
{
"Id": "c51cd8f528ae471a4bff77e2bb032dd9281ccce04f009d4edf9b0d7809b8b093",
"Name": "test-pod",
"Created": "2026-01-09T10:20:59.364267996+09:00",
"CreateCommand": [
"podman",
"pod",
"create",
"-p",
"8081:80",
"-n",
"test-pod"
],
"ExitPolicy": "continue",
"State": "Created",
"Hostname": "",
"CreateCgroup": true,
"CreateInfra": true,
"InfraContainerID": "314e9ddf58054869739799fb2b253d3877eddce6b23d6a62053f8afa4c903c62",
"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": [
"uts",
"ipc",
"net"
],
"NumContainers": 1,
"Containers": [
{
"Id": "314e9ddf58054869739799fb2b253d3877eddce6b23d6a62053f8afa4c903c62",
"Name": "c51cd8f528ae-infra",
"State": "created"
}
],
"security_opt": [
"unmask=all"
],
"LockNumber": 13
}
]
root@dlp:~ # podman images REPOSITORY TAG IMAGE ID CREATED SIZE localhost/freebsd-nginx latest 3cd54285ea87 58 minutes ago 1.02 GB localhost/freebsd-httpd latest dbf5f8b9e7e2 About an hour ago 1.19 GB localhost/freebsd-base latest afb96df72092 2 hours ago 902 MB quay.io/centos/centos stream10 e9ac565bc256 2 days ago 316 MB docker.io/library/ubuntu latest c3a134f2ace4 2 months ago 80.6 MB k8s.gcr.io/pause 3.10.1 cd073f4c5f6a 6 months ago 742 kB # コンテナーを起動して pod に追加する root@dlp:~ # podman run -dt --pod test-pod localhost/freebsd-nginx 457dfb1bf17a4b58a081dcc6a2cb8d0dcd0b63b58faa9299827736e805c55a73root@dlp:~ # podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 314e9ddf5805 k8s.gcr.io/pause:3.10.1 2 minutes ago Up 11 seconds 0.0.0.0:8081->80/tcp c51cd8f528ae-infra 457dfb1bf17a localhost/freebsd-nginx:latest /usr/local/sbin/n... 11 seconds ago Up 11 seconds 0.0.0.0:8081->80/tcp suspicious_swartz # アクセス確認 root@dlp:~ # ssh freebsd@node01.srv.world "curl -s http://`hostname`:8081" (freebsd@node01.srv.world) Password for freebsd@node01.srv.world: Dockerfile Test on Nginx # pod を停止する root@dlp:~ # podman pod stop test-pod test-pod # pod を削除する (コンテナーも含めて強制削除) root@dlp:~ # podman pod rm test-pod --force c51cd8f528ae471a4bff77e2bb032dd9281ccce04f009d4edf9b0d7809b8b093 |
| [2] | Pod の作成とコンテナーの追加を同時に実行することもできます。 |
|
root@dlp:~ # podman images REPOSITORY TAG IMAGE ID CREATED SIZE localhost/freebsd-nginx latest 3cd54285ea87 About an hour ago 1.02 GB localhost/freebsd-httpd latest dbf5f8b9e7e2 About an hour ago 1.19 GB localhost/freebsd-base latest afb96df72092 2 hours ago 902 MB quay.io/centos/centos stream10 e9ac565bc256 3 days ago 316 MB docker.io/library/ubuntu latest c3a134f2ace4 2 months ago 80.6 MB k8s.gcr.io/pause 3.10.1 cd073f4c5f6a 6 months ago 742 kB # [test-pod2] を新規作成して [localhost/freebsd-nginx] コンテナーを追加する root@dlp:~ # podman run -dt --pod new:test-pod2 -p 80:80 localhost/freebsd-nginx WARN[0000] image platform (linux/amd64) does not match the expected platform (freebsd/amd64) 130eca2a4c4a11d5187f0d93be6da6c016732226ceadac6409ab6cfd5c2d66c3root@dlp:~ # podman pod ls POD ID NAME STATUS CREATED INFRA ID # OF CONTAINERS ec5d072e5d1b test-pod2 Running 14 seconds ago b8db87fcc93f 2root@dlp:~ # podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b8db87fcc93f k8s.gcr.io/pause:3.10.1 28 seconds ago Up 28 seconds 0.0.0.0:80->80/tcp ec5d072e5d1b-infra 130eca2a4c4a localhost/freebsd-nginx:latest /usr/local/sbin/n... 28 seconds ago Up 28 seconds 0.0.0.0:80->80/tcp vibrant_shternroot@dlp:~ # ssh freebsd@node01.srv.world "curl -s http://`hostname`" (freebsd@node01.srv.world) Password for freebsd@node01.srv.world: Dockerfile Test on Nginx |
| Sponsored Link |
|
|