Podman : Pod を作成する2020/11/06 |
Kubernetes でおなじみの Pod も Podman で作成可能です。
|
|
[1] | Pod を作成してコンテナーを追加します。 |
# 空の pod を新規作成 # -p [バインドするポート] -n [pod の名前] [root@dlp ~]# podman pod create -p 8081:80 -n test-pod ad33d7cbb03659fc1f1462391a678cd3dd6bc694232dab7f862a8a10c605908e # 確認 [root@dlp ~]# podman pod ls POD ID NAME STATUS CREATED # OF CONTAINERS INFRA ID ad33d7cbb036 test-pod Created 8 seconds ago 1 2e4b27a2af22 # pod の詳細を表示 [root@dlp ~]# podman pod inspect test-pod { "Id": "ad33d7cbb03659fc1f1462391a678cd3dd6bc694232dab7f862a8a10c605908e", "Name": "test-pod", "Created": "2020-11-05T15:57:18.750919949+09:00", "CreateCommand": [ "podman", "pod", "create", "-p", "8081:80", "-n", "test-pod" ], "State": "Created", "Hostname": "test-pod", "CreateCgroup": true, "CgroupParent": "machine.slice", "CgroupPath": "machine.slice/machine-libpod_pod_ad33d7cbb03659fc1f1462391a678cd3dd6bc694232dab7f862a8a10c605908e.slice", "CreateInfra": true, "InfraContainerID": "2e4b27a2af22abd462e62a93628f2adb524c34933993d0bb5f437a002c6035ee", "InfraConfig": { "PortBindings": { "80/tcp": [ { "HostIp": "", "HostPort": "8081" } ] }, "HostNetwork": false, "StaticIP": "", "StaticMAC": null, "NoManageResolvConf": false, "DNSServer": null, "DNSSearch": null, "DNSOption": null, "NoManageHosts": false, "HostAdd": null, "Networks": null }, "SharedNamespaces": [ "ipc", "net", "uts" ], "NumContainers": 1, "Containers": [ { "Id": "2e4b27a2af22abd462e62a93628f2adb524c34933993d0bb5f437a002c6035ee", "Name": "ad33d7cbb036-infra", "State": "configured" } ] }[root@dlp ~]# podman images REPOSITORY TAG IMAGE ID CREATED SIZE srv.world/nginx-server latest 5c98ec35fda6 5 hours ago 419 MB srv.world/fedora-httpd latest 56430ecb044d 5 hours ago 439 MB registry.fedoraproject.org/fedora latest 79fd58dc7611 8 days ago 181 MB docker.io/library/nginx latest f35646e83998 3 weeks ago 137 MB k8s.gcr.io/pause 3.2 80d28bedfe5d 8 months ago 688 kB # コンテナーを起動して pod に追加する [root@dlp ~]# podman run -dt --pod test-pod srv.world/nginx-server 5cd040ee15f4f22c6bca086a8c17441324921c62942fcf6006f40638e1912c7a[root@dlp ~]# podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5cd040ee15f4 srv.world/nginx-server:latest /usr/sbin/nginx -... 7 seconds ago Up 7 seconds ago 0.0.0.0:8081->80/tcp boring_maxwell ..... ..... # アクセス確認 [root@dlp ~]# curl localhost:8081 Podman Test on Nginx # pod を停止する [root@dlp ~]# podman pod stop test-pod ad33d7cbb03659fc1f1462391a678cd3dd6bc694232dab7f862a8a10c605908e # pod を削除する (コンテナーも含めて強制削除) [root@dlp ~]# podman pod rm test-pod --force ad33d7cbb03659fc1f1462391a678cd3dd6bc694232dab7f862a8a10c605908e |
[2] | Pod の作成とコンテナーの追加を同時に実行することもできます。 |
[root@dlp ~]# podman images REPOSITORY TAG IMAGE ID CREATED SIZE srv.world/nginx-server latest 5c98ec35fda6 6 hours ago 419 MB srv.world/fedora-httpd latest 56430ecb044d 6 hours ago 439 MB registry.fedoraproject.org/fedora latest 79fd58dc7611 9 days ago 181 MB docker.io/library/nginx latest f35646e83998 3 weeks ago 137 MB registry.fedoraproject.org/f31/mariadb latest 7dae2805f59d 7 months ago 487 MB k8s.gcr.io/pause 3.2 80d28bedfe5d 8 months ago 688 kB # [test-pod2] pod の新規作成と コンテナーの起動 & pod への追加を同時に行う [root@dlp ~]# podman run -dt --pod new:test-pod2 -p 80:80 -p 3306:3306 srv.world/nginx-server cdccf743338b324a7041742da890b257be9ddc3c92c130e4398d66a982fdcbb4[root@dlp ~]# podman pod ls POD ID NAME STATUS CREATED # OF CONTAINERS INFRA ID 9dc3ad79dc0e test-pod2 Running 7 seconds ago 2 b7ec7cb02728[root@dlp ~]# podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES cdccf743338b srv.world/nginx-server:latest /usr/sbin/nginx -... 20 seconds ago Up 20 seconds ago 0.0.0.0:80->80/tcp busy_ritchie ..... .....[root@dlp ~]# podman run -dt --pod test-pod2 -e MYSQL_ROOT_PASSWORD=Password registry.fedoraproject.org/f31/mariadb 93d6220d89e2bc466dc0268bb9fc65d7010739e7db4567f921a24c2635bf7065[root@dlp ~]# podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 93d6220d89e2 registry.fedoraproject.org/f31/mariadb:latest run-mysqld 9 seconds ago Up 8 seconds ago 0.0.0.0:80->80/tcp awesome_mestorf b7ec7cb02728 k8s.gcr.io/pause:3.2 About a minute ago Up About a minute ago 0.0.0.0:80->80/tcp 9dc3ad79dc0e-infra cdccf743338b srv.world/nginx-server:latest /usr/sbin/nginx -... About a minute ago Up About a minute ago 0.0.0.0:80->80/tcp busy_ritchie ..... .....
[root@dlp ~]#
[root@dlp ~]# curl dlp.srv.world Dockerfile Test on Nginx mysql -u root -p -h dlp.srv.world -e "show variables like 'hostname';" Enter password: +---------------+-----------+ | Variable_name | Value | +---------------+-----------+ | hostname | test-pod2 | +---------------+-----------+ |
Sponsored Link |