日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
一文帶你掌握Containerd

Containerd 是什么

Containerd是一個開源的容器運(yùn)行時工具,它為容器提供了核心功能。作為一個獨(dú)立的項(xiàng)目,Containerd旨在管理容器的核心功能,如鏡像管理、容器生命周期管理、網(wǎng)絡(luò)和存儲管理等。它是由Docker項(xiàng)目中的核心組件分離出來的,用于提供一個更加輕量級、獨(dú)立且可嵌入的容器運(yùn)行時環(huán)境。Containerd被設(shè)計為一個通用的核心容器運(yùn)行時,因此許多容器平臺和工具都可以構(gòu)建在其之上,包括Kubernetes、Docker等。Containerd并不是直接面向終端用戶的工具,而是為了提供穩(wěn)定、可靠的容器基礎(chǔ)設(shè)施,讓開發(fā)者和其他項(xiàng)目可以基于它構(gòu)建更高級別的容器化解決方案。

在遼中等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站設(shè)計制作、做網(wǎng)站 網(wǎng)站設(shè)計制作按需網(wǎng)站制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,成都營銷網(wǎng)站建設(shè),外貿(mào)網(wǎng)站制作,遼中網(wǎng)站建設(shè)費(fèi)用合理。

與 Docker 的關(guān)系

Docker和Containerd之間有一種父子關(guān)系。Containerd實(shí)際上是從Docker項(xiàng)目中拆分出來的,是Docker引擎中的核心組件之一。具體來說,Docker Engine在其架構(gòu)中使用了一種插件化的方式,而Containerd就是其中一個重要的組件。Docker Engine的架構(gòu)涵蓋了各種功能模塊,其中包括容器構(gòu)建、鏡像管理、容器運(yùn)行時、網(wǎng)絡(luò)和存儲管理等。Containerd被用作Docker Engine中負(fù)責(zé)容器生命周期管理和基本操作的核心組件之一。因此,Docker實(shí)際上是建立在Containerd之上的應(yīng)用層工具。當(dāng)你使用Docker命令時,它會與Containerd交互以執(zhí)行諸如創(chuàng)建、運(yùn)行和管理容器等操作。然而,Containerd本身更加通用和抽象化,可以為其他容器平臺和工具提供底層支持,而不僅限于Docker??傮w而言,Docker是一個集成了各種工具和功能的容器平臺,而Containerd是其中一個核心組件,負(fù)責(zé)提供基本的容器運(yùn)行時功能。

安裝Containerd

系統(tǒng)信息

[root@localhost ~]# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core)

二進(jìn)制安裝

下載地址?https://github.com/containerd/containerd最新版本1.7.10

[root@localhost ~]# wget https://github.com/containerd/containerd/releases/download/v1.7.10/cri-containerd-1.7.10-linux-amd64.tar.gz
[root@localhost ~]# tar xf cri-containerd-1.7.10-linux-amd64.tar.gz  -C /

生成Containerd配置

[root@localhost ~]# mkdir /etc/containerd
[root@localhost ~]# containerd config default > /etc/containerd/config.toml

查看配置
[root@localhost ~]# cat/etc/containerd/config.toml

安裝好containerd 之后,Containerd的配置文件中有如下兩項(xiàng)配置:
root = /var/lib/containerd
state = "/run/containerd"

root配置的目錄是用來保存持久化數(shù)據(jù)的目錄,包括content, snapshot, metadata和runtime
state 是用來保存運(yùn)行時的臨時數(shù)據(jù)的,包括 sockets、pid、掛載點(diǎn)、運(yùn)行時狀態(tài)以及不需要持久化的插件數(shù)據(jù)。

Containerd開機(jī)自啟

[root@localhost ~]# systemctl enable --now containerd
Created symlink from /etc/systemd/system/multi-user.target.wants/containerd.service to /etc/systemd/system/containerd.service.
[root@localhost ~]# systemctl start containerd

驗(yàn)證其版本
[root@localhost ~]# containerd --version
containerd github.com/containerd/containerd v1.7.10 4e1fe7492b9df85914c389d1f15a3ceedbb280ac

runc驗(yàn)證

默認(rèn) Containerd 安裝好就會自帶一個 runc 命令

執(zhí)行runc命令,如果有版本號返回則為正常
[root@localhost ~]# runc -v
runc version 1.1.10
commit: v1.1.10-0-g18a0cb0f
spec: 1.0.2-dev
go: go1.20.10
libseccomp: 2.5.4

如果運(yùn)行runc命令時提示:runc: error while loading shared libraries: ?libseccomp.so.2: cannot open shared object file: No such file or directory,則表明runc沒有找到libseccomp,需要安裝 libseccomp libseccomp安裝

[root@localhost ~]# wget https://github.com/opencontainers/runc/releases/download/v1.1.5/libseccomp-2.5.4.tar.gz
[root@localhost ~]# tar xf libseccomp-2.5.4.tar.gz
[root@localhost ~]# cd libseccomp-2.5.4/
[root@localhost ~]# ./configure
[root@localhost ~]# make && make install

查找的到 即安裝成功
[root@localhost ~]# find / -name "libseccomp.so"
/root/libseccomp-2.5.4/src/.libs/libseccomp.so 
/usr/local/lib/libseccomp.so

做軟鏈

[root@localhost ]# ln -s /usr/local/lib/libseccomp.so /lib64/libseccomp.so.2

再次查看
[root@localhost ]# runc -v
runc version 1.1.10
commit: v1.1.10-0-g18a0cb0f
spec: 1.0.2-dev
go: go1.20.10
libseccomp: 2.5.4

也可以二進(jìn)制runc安裝?https://github.com/opencontainers/runc最新版本:1.1.10

[root@localhost ~]# wget https://github.com/opencontainers/runc/releases/download/v1.1.10/runc.amd64
[root@localhost ~]# chmod +x runc.amd64

查找containerd安裝時已安裝的runc所在的位置,然后替換
[root@localhost ~]# which runc /usr/local/sbin/runc

替換containerd已安裝的runc
[root@localhost ~]# mv runc.amd64 /usr/local/sbin/runc

執(zhí)行runc命令,如果有命令幫助則為正常
[root@localhost ~]# runc -v
runc version 1.1.10
commit: v1.1.10-0-g18a0cb0f
spec: 1.0.2-dev
go: go1.20.10
libseccomp: 2.5.4

yum安裝

在使用 yum 包管理器安裝 Containerd 之前,需要先設(shè)置 Containerd 的 YUM 倉庫。以下是大致的步驟:

準(zhǔn)備YUM 倉庫

創(chuàng)建一個名為 /etc/yum.repos.d/containerd.repo 的文件,并將以下內(nèi)容添加到該文件中:

[containerd]
name=containerd
baseurl=https://download.docker.com/linux/centos/7/$basearch/stable
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg
enabled=1

安裝 Containerd

在設(shè)置好倉庫文件后,運(yùn)行以下命令以更新 YUM 緩存并使其識別新的倉庫信息:

[root@localhost ~]# yum makecache
[root@localhost ~]# yum install -y containerd.io

啟動 Containerd

[root@localhost ~]# systemctl enable containerd
[root@localhost ~]# systemctl start containerd

驗(yàn)證 Containerd

[root@localhost ~]# containerd -v
containerd containerd.io 1.6.25 d8f198a4ed8892c764191ef7b3b06d8a2eeb5c7f

[root@localhost ~]# runc -v
runc version 1.1.10
commit: v1.1.10-0-g18a0cb0
spec: 1.0.2-dev
go: go1.20.10
libseccomp: 2.3.1

Containerd 常見命令操作

更換 Containerd 后,以往常用的 docker 命令也不再使用,取而代之的分別是 crictl 和 ctr 兩個命令客戶端。一般來說某個主機(jī)安裝了 k8s 后,命令行才會有 crictl 命令。而 ctr 是跟 k8s 無關(guān)的,主機(jī)安裝了 containerd 服務(wù)后就可以操作 ctr 命令。

  • crictl 是遵循 CRI 接口規(guī)范的一個命令行工具,通常用它來檢查和管理kubelet節(jié)點(diǎn)上的容器運(yùn)行時和鏡像。
  • ctr 是 containerd 的一個客戶端工具。

還有一個更高級點(diǎn)的命令 nerdctl ,nerdctl 是用于 containerd 并且 兼容 docker cli 習(xí)慣的管理工具,主要適用于剛從 docker 轉(zhuǎn)到 containerd 的用戶,操作 containerd 的命令行工具 ctr 和 crictl 不怎么好用,所以就有了 nerdctl。


文章標(biāo)題:一文帶你掌握Containerd
文章位置:http://m.5511xx.com/article/coicdie.html