Podman是redhat發行的容器管理工具,類似于docker,但是沒有守護進程。它不僅可以管理OCI容器,還可以管理pod, 這也是和docker的最大差別吧.
Podman提供了一個指令和docker十分類似的命令行前端,有87%的指令都和docker cli相同,基本上把docker命令套用在podman上就可以用。在RHEL8中,直接預裝了podman用來替代之前的docker
Podman和docker比較有啥好處?
1)更加rootless, 盡管docker也可以rootless, 但是podman設計之初就開始支持;
2)沒有daemon, 這使得podman在結合namespace和cgroup一起使用會更加靈活;
3)和k8s基本一樣的pod, 一樣支持infra容器,這使得一些簡單的容器編排工作, podman也可以簡單實現;
4)在systemd service集成方面, 由于沒有deamon, podman通過generate子命令, 可以生成systemd service配置, 來管理容器和pod的作為服務啟動.
5)Podman可以生成kubectl的yaml配置文件, 也通過podman play kube來運行k8s的配置, 也可以作為k8s的一個過渡吧, 而且podman也沒有去實現CRI的計劃, 這應該也是官方的態度, 不會參和到k8s生態中, 保持自己的輕量化工具的定位吧;
6)Podman通過ssh隧道或者tcp端口, 可以連接到遠程機器上的podman service, 從而實現遠程機器上的容器和 pod 管理.
所以podman提供了一些輕量化而又靈活的功能特性,滿足容器化以及小批量服務器的場景。
下面我在Rocky8里面安裝并使用一下podman。
安裝很簡單,直接yum安裝即可
# yum install -y podman
查看其版本
# podman --version
查看鏡像列表
# podman images
拉取指定鏡像
# podman pull busybox
Resolved "busybox" as an alias (/etc/containers/registries.conf.d/000-shortnames.conf)
Trying to pull docker.io/library/busybox:latest...
Getting image source signatures
Copying blob f5b7ce95afea done
Copying config ff4a8eb070 done
Writing manifest to image destination
Storing signatures
ff4a8eb070e12018233797e865841d877a7835c4c6d5cfc52e5481995da6b2f7
查看鏡像
# podman images
REPOSITORY TAG IMAGE ID CREATED SIZE
latest ff4a8eb070e1 Less than a second ago 1.46 MB
啟動容器
# podman run -itd busybox
2a4e9bd4db56971179a8f498d19caeac738dc1d3dc66cae949bde14d683a7016
查看啟動的容器
# podman ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
latestsh12secondsagoUp7secondsagocrazy_nash :
可以看到,跟docker用法幾乎一模一樣。
審核編輯:湯梓紅
-
容器
+關注
關注
0文章
495瀏覽量
22061 -
Docker
+關注
關注
0文章
458瀏覽量
11854
原文標題:我們都該學學podman
文章出處:【微信號:aming_linux,微信公眾號:阿銘linux】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論