podman初試-和docker對(duì)比1,,什么是docker,?Docker 是一個(gè)開(kāi)源的應(yīng)用容器引擎,屬于 Linux 容器的一種封裝,,Docker 提供簡(jiǎn)單易用的容器使用接口,,讓開(kāi)發(fā)者可以打包他們的應(yīng)用以及依賴包到一個(gè)可移植的容器中,然后發(fā)布到任何流行的 Linux 機(jī)器上,。容器是完全使用沙箱機(jī)制,,相互之間不會(huì)有任何接口。 2,,什么是Podman,?Podman 是一個(gè)開(kāi)源的容器運(yùn)行時(shí)項(xiàng)目,可在大多數(shù) Linux 平臺(tái)上使用,。Podman 提供與 Docker 非常相似的功能,。正如前面提到的那樣,,它不需要在你的系統(tǒng)上運(yùn)行任何守護(hù)進(jìn)程,并且它也可以在沒(méi)有 root 權(quán)限的情況下運(yùn)行,。
3,,Podman 和docker不同之處,?
4,,podman的安裝4.1,,Arch Linux & Manjaro Linuxsudo pacman -S podman 4.2,F(xiàn)edora,,Centos
4.3,,Gentoosudo emerge app-emulation/libpod 4.4,MacOS
5,,Podman CLI介紹Podman CLI 里面87%的指令都和DOcker CLI 相同,,官方給出了這么個(gè)例子 運(yùn)行一個(gè)容器podman run -dt -p 80:80 --name nginx -v /data:/data -e NGINX_VERSION=1.16 nginx:1.16.0 列出當(dāng)前所有的容器
查看一個(gè)鏡像信息# podman inspect nginx | grep -i 'ipaddress' 'SecondaryIPAddresses': null, 'IPAddress': '10.88.0.110', 查看容器運(yùn)行的日志
查看運(yùn)行中容器資源使用情況# podman top nginxUSER PID PPID %CPU ELAPSED TTY TIME COMMANDroot 1 0 0.000 5m26.420969043s pts/0 0s nginx: master process nginx -g daemon off;nginx 6 1 0.000 5m26.421085502s pts/0 0s nginx: worker process# podman stats nginxID NAME CPU % MEM USAGE / LIMIT MEM % NET IO BLOCK IO PIDS19f105d5dc1e nginx -- 2.036MB / 1.893GB 0.11% 978B / 10.55kB -- / -- 2 遷移容器Podman 支持將容器從一臺(tái)機(jī)器遷移到另一臺(tái)機(jī)器,。
其次,,在目標(biāo)機(jī)器上使用源機(jī)器上傳輸過(guò)來(lái)的打包文件對(duì)容器進(jìn)行恢復(fù)。 $ sudo podman container restore -i /tmp/checkpoint.tar.gz podman的程序如何設(shè)置自啟動(dòng)由于 Podman 不再使用守護(hù)進(jìn)程管理服務(wù),,所以不能通過(guò)守護(hù)進(jìn)程去實(shí)現(xiàn)自動(dòng)重啟容器的功能,。那如果要實(shí)現(xiàn)開(kāi)機(jī)自動(dòng)重啟容器,又該如何實(shí)現(xiàn)呢,?
接下來(lái),啟用這個(gè) Systemd 服務(wù) $ sudo systemctl daemon-reload$ sudo systemctl enable nginx_podman.service$ sudo systemctl start nginx_podman.service 之后每次系統(tǒng)重啟后 Systemd 都會(huì)自動(dòng)啟動(dòng)這個(gè)服務(wù)所對(duì)應(yīng)的容器,,容器死亡之后也會(huì)啟動(dòng)這個(gè)容器,,我們可以用下面的例子做測(cè)試
然后按照上述方式設(shè)置啟動(dòng)自啟動(dòng) 演示下Podman 下啟動(dòng)的容器為Podman的子進(jìn)程我們剛才啟動(dòng)了一個(gè)nginx的podman 現(xiàn)在我們來(lái)看一下他的進(jìn)程 # ps -ef | grep [n]ginxroot 19368 19359 0 11:38 pts/0 00:00:00 nginx: master process nginx -g daemon off;101 19381 19368 0 11:38 pts/0 00:00:00 nginx: worker process 然后查看這個(gè)nginx的父進(jìn)程是那個(gè)
所以驗(yàn)證了我上面的說(shuō)法 |
|