成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

再見Docker!使用Podman、Skopeo和Buildah下一代容器新架構

云計算
很多人可能遇到過開機重啟時,由于Docker守護程序在占用多核CPU使用100%C使用的情況,導致所有容器都無法啟動,服務都不能用的情況。

 

緣起:

很多人可能遇到過開機重啟時,由于Docker守護程序在占用多核CPU使用100%C使用的情況,導致所有容器都無法啟動,服務都不能用的情況。很悲催的是這事兒蟲蟲也遇到了,之前文章中蟲蟲介紹過利用Docker重構WP博客的新架構。由于VPS機器不是很穩定,時常會重啟,重啟時候就會遇到這個事情,VPS負載很高,容器都沒有起來,網站就無法訪問了。這時候只能殺掉所有容器并重啟守護進程,才能恢復。經過了解該問題是由于Docker守護進程引起,而且Docker守護進程是以root特權權限啟動的,是一個安全問題,那么有什么方法解決呢?

為什么Docker需要一個守護進程呢?

Podman,Skopeo和Buildah

這三個工具都是符合OCI計劃下的工具(github/containers)。主要是由RedHat推動的,他們配合可以完成Docker所有的功能,而且不需要守護程序或訪問有root權限的組,更加安全可靠,是下一代容器容器工具。

Podman

 

再見Docker!使用Podman、Skopeo和Buildah下一代容器新架構

 

Podman可以替換Docker中了大多數子命令(RUN,PUSH,PULL等)。Podman不需要守護進程,而是使用用戶命名空間來模擬容器中的root,無需連接到具有root權限的套接字保證容器的體系安全。

Podman專注于維護和修改OCI鏡像的所有命令和功能,例如拉動和標記。它還允許我們創建,運行和維護從這些圖像創建的容器。

Buildah

Buildah用來構建OCI圖像。雖然Podman也可以用戶構建Docker鏡像,但是構建速度超慢,并且默認情況下使用vfs存儲驅動程序會耗盡大量磁盤空間。 buildah bud(使用Dockerfile構建)則會非常快,并使用覆蓋存儲驅動程序。

再見Docker!使用Podman、Skopeo和Buildah下一代容器新架構

Buildah專注于構建OCI鏡像。 Buildah的命令復制了Dockerfile中的所有命令。可以使用Dockerfiles構建鏡像,并且不需要任何root權限。 Buildah的最終目標是提供更低級別的coreutils界面來構建圖像。Buildah也支持非Dockerfiles構建鏡像,可以允許將其他腳本語言集成到構建過程中。 Buildah遵循一個簡單的fork-exec模型,不以守護進程運行,但它基于golang中的綜合API,可以存儲到其他工具中。

Skopeo

Skopeo是一個工具,允許我們通過推,拉和復制鏡像來處理Docker和OC鏡像。

[[274424]]

Podman和Buildah對比

Buildah構建容器,Podman運行容器,Skopeo傳輸容器鏡像。這些都是由Github容器組織維護的開源工具(github/containers)。這些工具都不需要運行守護進程,并且大多數情況下也不需要root訪問權限。

Podman和Buildah之間的一個主要區別是他們的容器概念。 Podman允許用戶創建"傳統容器"。雖然Buildah容器實際上只是為了允許將內容添加回容器圖像而創建的。一種簡單方法是buildah run命令模擬Dockerfile中的RUN命令,而podman run命令模擬功能中的docker run命令。

簡而言之,Buildah是創建OCI圖像的有效方式,而Podman允許我們使用熟悉的容器cli命令在生產環境中管理和維護這些圖像和容器。

容器遷移

安裝

基本上各大發行版都提供了二進制安裝包, 使用系統包管理就可以安裝:

  1. Fedora, CentOS:sudo yum -y install podman  
  2. Arch & Manjaro Linux: sudo pacman -S podman 

Ubuntu安裝:

  1. sudo apt-get update -qq 
  2. sudo apt-get install -qq -y software-properties-common uidmap 
  3. sudo add-apt-repository -y ppa:projectatomic/ppa 
  4. sudo apt-get update -qq 
  5. sudo apt-get -qq -y install podman 

遷移步驟

首先,用podman替換了cron和CI作業中的所有docker實例。

完成后第一步后使用sysdig來捕獲對docker的引用,看看是否還有其他東西在調用docker:

  1. sysdig | grep -w docker 

如果您對性能敏感,這可能會大大降低系統速度。

現在就可以刪除docker了:

  1. sudo:yum remove docker 

或者

  1. apt remove -y docker-ce 

清理配置文件:

刪除/etc/apt/*或者/etc/yum.repos.d/*中指向Docker的源

刪除/etc/docker/*,/etc/default/docker和/var/lib/ docker中的任何遺留文件

刪除docker組:delgroup docker

總結

使用Podman,Skopeo和Buildah的新一代容器架構后,可以解決由于docker守護程序導致的啟動和安全問題。使用新架構后除了"沒有守護進程"和"不需要sudo訪問"之外,沒有發現很多不同之處。構建的容器都位于用戶目錄下(~/.local/containers中)而不是全局的(在/var/lib/docker中),即面向用戶而不是面向守護進程。與Docker相比,podman pull會并行下載獲取所有層。

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2019-09-26 15:30:34

DockerLinux開源

2013-07-27 21:28:44

2025-01-03 09:24:10

模型架構論文

2013-06-27 11:21:17

2015-10-19 17:15:33

網絡架構/華三

2011-01-11 10:13:06

2020-09-16 10:28:54

邊緣計算云計算數據中心

2020-09-27 17:27:58

邊緣計算云計算技術

2012-07-18 09:21:54

iPhone觸摸屏

2015-09-10 09:39:01

容器技術Docker

2012-03-24 20:49:49

iPhone

2011-08-30 10:02:31

2021-11-01 10:41:59

DockerEarthlyLinux

2013-09-09 16:28:36

2016-01-26 11:58:12

2012-07-16 09:27:19

BYOD下一代IT

2012-07-16 10:08:31

下一代ITBYOD

2023-04-28 10:02:50

2015-10-15 10:30:32

2020-06-02 08:05:28

智能電表蜂窩物聯網NB-IoT
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品一区二区三区四区五区 | 久久成人免费视频 | 日韩综合在线 | 91人人在线 | 亚洲精品一区二区三区蜜桃久 | 日韩一区二区三区视频 | 亚洲不卡在线观看 | 狠狠综合网 | 精品成人在线观看 | 久久久激情 | 激情欧美一区二区三区 | 久久国产精品色av免费观看 | 欧美一区二区三区精品免费 | 一区二区三区中文字幕 | 99视频| 久久9热 | 中国一级毛片免费 | 精品国产91 | 国产一区在线视频 | 99久久免费精品 | 一级做a爰片久久毛片免费看 | 国产精品久久久久久久久久免费 | 精品日韩一区 | 91精品国产色综合久久 | 国产高清性xxxxxxxx | 大久| 99久久精品视频免费 | aaaaaaa片毛片免费观看 | 国产乱码精品1区2区3区 | 国产最新网址 | 欧美成人激情视频 | 亚洲一区在线日韩在线深爱 | 草樱av| 国产在线一| 国产精品久久久久久久久久 | 在线91| www.日本在线观看 | 精品国产第一区二区三区 | 日韩中文字幕视频 | 日本三级全黄三级三级三级口周 | 成人免费淫片aa视频免费 |