Containerd

Containerd

概述

Containerd(Container Daemon)是一个开源的容器运行时,它提供了一种标准化的方式来管理容器的生命周期。该项目最初由Docker开发团队创建,并在后来成为一个独立的项目,被纳入了Cloud Native Computing Foundation(CNCF)(云原生基金会)的孵化项目中。

特点和功能

容器生命周期管理
Containerd管理容器的生命周期,包括容器的创建、运行、暂停、恢复、停止和销毁等操作
标准化接口
Containerd提供了一个标准化的容器运行时接口,使得它可以与多个容器编排系统和工具集成,例如Kubernetes、Docker、Compose
镜像管理
它支持容器镜像的拉取、推送、保存和加载等操作。Containerd使用OCI(OPEN Container Initiative)规范定义容器镜像格式
插件体系结构
Containerd具有可扩展的插件体系结构,运行用户通过插件来扩展其他功能,例如存储驱动、网络插件等
跨平台支持
Containerd可以在不同的操作系统上运行,从而提供了跨平台的支持
与Kubernetes集成
Containerd作为Kubernetes的默认容器运行时,与Kubernetes紧密集成,为容器工作负载的管理提供了良好的支持
安全性与隔离
Containerd实现了严格的容器隔离和安全性措施,确保容器之间的隔离性以及对主机系统的安全性

核心组件解析

Containerd组件大致分为Storage、Metadata和Runtime三个主要方面
在这里插入图片描述

安装Containerd

[root@localhost ~]# rm -rf /etc/yum.repos.d/*
[root@localhost ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
[root@localhost ~]# curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
[root@localhost ~]# yum clean all
[root@localhost ~]# sudo yum install -y yum-utils device-mapper-persistent-data lvm2
[root@localhost ~]# sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@localhost ~]# sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
[root@localhost ~]# containerd config default > /etc/containerd/config.toml
[root@localhost ~]# yum -y install containerd.io
[root@localhost ~]# vim /etc/containerd/config.toml
在156行添加如下代码
[plugins."io.containerd.grpc.v1.cri".registry.config."docker.io"]
endpoint = ["https://registry.cn-hangzhou.aliyuncs.com" ,"https://registry-1.docker.io"]
[root@localhost ~]# systemctl start containerd
[root@localhost ~]# systemctl enable containerd

Containerd基础命令

镜像

拉取镜像
ctr images pull hub.atomgit.com/amd64/centos:centos7

查看镜像
ctr images ls

更改镜像名称
ctr images tag 原镜像名 新镜像名

删除镜像
ctr images rm 镜像名

挂载镜像到主机目录
ctr images mount 镜像名:TAG 要挂载的目录/挂载点

取消挂载
ctr images unmount 挂载点

导出镜像
ctr images export --all-platforms 导出后的文件名 镜像名

导入镜像
ctr images import 文件名

容器

创建容器
ctr containers create 镜像名 容器名

列出容器
ctr containers ls

查看容器的详细信息
ctr containers info 容器名

删除容器
ctr containers rm 容器名

任务类操作

ctr containers create 镜像名 容器名

启动容器         //-d:放入后台
ctr task start -d 容器名 

查看容器
ctr task ls

进入容器里面        //--exec-id 可以随便写不重复即可
ctr task exec --extc-id 0 -t nginx sh

暂停容器
ctr task pause 容器名

恢复容器
ctr task resume 容器名

杀死容器
ctr task kill 容器名

删除任务
ctr task rm 容器名
//虽然已经删除了任务,但是在创建任务时,也创建了一个同名的快照,即便已经删除了任务也可使用“ctr task start -d 容器名”命令,利用此快照将已删除的任务启动起来,使得此容器恢复运行

删除容器
ctr task kill 容器名
ctr containers rm 容器名

获取容器的内存、CPU和PID的限额与使用量
ctr task metrics 容器名

查看所有进程在宿主机的PID
ctr task ps 容器名

插件

列出当前所有插件
ctr plugins ls

命名空间

查看所有命名空间
ctr ns ls

创建命名空间
ctr ns create 命名空间名称

删除命名空间
ctr ns rm 命名空间名称

在操作时通过-n来指定命名空间,不指定则在默认命名空间default中操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值