Podman : Create Pods2022/04/28 |
|
Create Pods like Kubernetes.
|
|
| [1] | Create a Pod and add a Container to it. |
|
# create a empty pod # -p [bind port] -n [pod name] root@dlp:~# podman pod create -p 8081:80 -n test-pod f20604e462ca2e68343776fa3150a8df08469aa3005b062adfdf5980da2e0421 # show pods root@dlp:~# podman pod ls POD ID NAME STATUS CREATED INFRA ID # OF CONTAINERS f20604e462ca test-pod Created 8 seconds ago a4a38b154286 1 # show details of pod root@dlp:~# podman pod inspect test-pod
{
"Id": "f20604e462ca2e68343776fa3150a8df08469aa3005b062adfdf5980da2e0421",
"Name": "test-pod",
"Created": "2022-04-28T07:02:13.638313303Z",
"CreateCommand": [
"podman",
"pod",
"create",
"-p",
"8081:80",
"-n",
"test-pod"
],
"State": "Created",
"Hostname": "",
"CreateCgroup": true,
"CgroupParent": "machine.slice",
"CgroupPath": "machine.slice/machine-libpod_pod_f20604e462ca2e68343776fa3150a8df08469aa3005b062adfdf5980da2e0421.slice",
"CreateInfra": true,
"InfraContainerID": "a4a38b15428675bf5a917fe3bb8a8135c6d1901c0395767224afd4be1e1387ff",
"InfraConfig": {
"PortBindings": {
"80/tcp": [
{
"HostIp": "",
"HostPort": "8081"
}
]
},
"HostNetwork": true,
"StaticIP": "",
"StaticMAC": "",
"NoManageResolvConf": false,
"DNSServer": null,
"DNSSearch": null,
"DNSOption": null,
"NoManageHosts": false,
"HostAdd": null,
"Networks": null,
"NetworkOptions": null,
"pid_ns": "private",
"userns": "host"
},
"SharedNamespaces": [
"ipc",
"net",
"uts"
],
"NumContainers": 1,
"Containers": [
{
"Id": "a4a38b15428675bf5a917fe3bb8a8135c6d1901c0395767224afd4be1e1387ff",
"Name": "f20604e462ca-infra",
"State": "configured"
}
]
}
root@dlp:~# podman images REPOSITORY TAG IMAGE ID CREATED SIZE srv.world/ubuntu-nginx latest 00787fa1628b About an hour ago 170 MB srv.world/ubuntu-apache2 latest c5d3a78bc38f About an hour ago 224 MB docker.io/library/mariadb latest 7a1ace59b072 6 days ago 421 MB docker.io/library/ubuntu latest 3f4714ee068a 6 days ago 80.3 MB docker.io/library/registry 2 2e200967d166 3 weeks ago 24.7 MB k8s.gcr.io/pause 3.5 ed210e3e4a5b 13 months ago 690 kB # run container and add it to pod root@dlp:~# podman run -dt --pod test-pod srv.world/ubuntu-nginx eec3cc1b6e88857703d1f61542041d22a9317d6556e9c5a68caef02387531e8aroot@dlp:~# podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a4a38b154286 k8s.gcr.io/pause:3.5 About a minute ago Up 8 seconds ago 0.0.0.0:8081->80/tcp f20604e462ca-infra eec3cc1b6e88 srv.world/ubuntu-nginx:latest /usr/sbin/nginx -... 8 seconds ago Up 8 seconds ago 0.0.0.0:8081->80/tcp exciting_bouman # verify accesses root@dlp:~# curl localhost:8081 Podman Test on Nginx # stop pod root@dlp:~# podman pod stop test-pod f20604e462ca2e68343776fa3150a8df08469aa3005b062adfdf5980da2e0421 # remove pod (removed containers all) root@dlp:~# podman pod rm test-pod --force f20604e462ca2e68343776fa3150a8df08469aa3005b062adfdf5980da2e0421 |
| [2] | It's possible to create Pod and add Container with one command. |
|
root@dlp:~# podman images REPOSITORY TAG IMAGE ID CREATED SIZE srv.world/ubuntu-nginx latest 37125087a75f 5 hours ago 216 MB srv.world/ubuntu-apache2 latest 68a7269c5457 5 hours ago 260 MB docker.io/library/ubuntu latest fe3c5de03486 10 days ago 129 MB docker.io/library/registry 2 1fd8e1b0bb7e 4 months ago 26.8 MB k8s.gcr.io/pause 3.2 80d28bedfe5d 18 months ago 688 kB # create a [test_pod2] pod and add [srv.world/ubuntu-nginx] container root@dlp:~# podman run -dt --pod new:test-pod2 -p 80:80 -p 3306:3306 srv.world/ubuntu-nginx 63366e847dbff84e7c67961900624272f8762319876c44783144b86478c79063root@dlp:~# podman pod ls POD ID NAME STATUS CREATED INFRA ID # OF CONTAINERS 796f464a433c test-pod2 Running 13 seconds ago 7c1c826b9808 2root@dlp:~# podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7c1c826b9808 k8s.gcr.io/pause:3.5 26 seconds ago Up 26 seconds ago 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp 796f464a433c-infra 63366e847dbf srv.world/ubuntu-nginx:latest /usr/sbin/nginx -... 26 seconds ago Up 26 seconds ago 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp nice_chaum # run [mariadb] container and add it to the [test-pod2] root@dlp:~# podman run -dt --pod test-pod2 -e MYSQL_ROOT_PASSWORD=Password docker.io/library/mariadb 63c04b93b764120a7960c04244709bd601f192703206c3d6b49a7740bc38275froot@dlp:~# podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7c1c826b9808 k8s.gcr.io/pause:3.5 59 seconds ago Up 59 seconds ago 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp 796f464a433c-infra 63366e847dbf srv.world/ubuntu-nginx:latest /usr/sbin/nginx -... 59 seconds ago Up 59 seconds ago 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp nice_chaum 63c04b93b764 docker.io/library/mariadb:latest mariadbd 6 seconds ago Up 6 seconds ago 0.0.0.0:80->80/tcp, 0.0.0.0:3306->3306/tcp focused_easley
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 |
|
|