nerdctl安装,操作 containerd 如 docker

参考

安装

安装

下载地址: https://github.com/containerd/nerdctl/releases

  • 精简 (nerdctl-0.8.0-linux-amd64.tar.gz): 只包含nerdctl
  • 完整 (nerdctl-full-0.8.0-linux-amd64.tar.gz): 包含 containerd, runc, and CNI等依赖

其实官网已经有介绍安装方法,同时也介绍了包含哪些组件

Minimal
Extract the archive to a path like /usr/local/bin or ~/bin .

tar Cxzvvf /usr/local/bin nerdctl-0.21.0-linux-amd64.tar.gz
Full
Extract the archive to a path like /usr/local or ~/.local .

tar Cxzvvf /usr/local nerdctl-full-0.21.0-linux-amd64.tar.gz

精简Minimal

将归档文件解压到 /usr/local/bin~/bin

$ tar Cxzvvf /usr/local/bin nerdctl-0.21.0-linux-amd64.tar.gz

完整Full安装

解压文件到/usr/local/

# 这个直接将所有组件放入了  local 文件夹
$ tar Cxzvvf /usr/local nerdctl-full-0.21.0-linux-amd64.tar.gz
# 应该可以按需放入 先解压后再放入

开启服务

$ cp /usr/local/lib/systemd/system/*.service /etc/systemd/system/
# buildkit 是用于构建镜像
# 自启动 buildkit 和 contaienrd 服务
$ systemctl enable buildkit containerd 
$ systemctl start buildkit containerd 
# 查看状态
$ systemctl status buildkit containerd

操作

🐳nerdctl save:导出镜像

使用 save 命令可以导出镜像为一个 tar 压缩包。

➜  ~ nerdctl save -o busybox.tar.gz busybox:latest
➜  ~ ls -lh busybox.tar.gz
-rw-r--r-- 1 root root 761K Aug 19 15:19 busybox.tar.gz

🐳nerdctl rmi:删除镜像

➜  ~ nerdctl rmi busybox
Untagged: docker.io/library/busybox:latest@sha256:0f354ec1728d9ff32edcd7d1b8bbdfc798277ad36120dc3dc683be44524c8b60
Deleted: sha256:5b8c72934dfc08c7d2bd707e93197550f06c0751023dabb3a045b723c5e7b373

🐳nerdctl load:导入镜像

使用 load 命令可以将上面导出的镜像再次导入:

➜  ~ nerdctl load -i busybox.tar.gz
unpacking docker.io/library/busybox:latest (sha256:0f354ec1728d9ff32edcd7d1b8bbdfc798277ad36120dc3dc683be44524c8b60)...done

使用 -i--input 选项指定需要导入的压缩包。

其他命令

ContainerdDocker都是容器平台,但它们有着一些关键的区别: 1. **起源与设计目标**: - Docker是一个完整且自包含的容器引擎,它集成了镜像制作、运行和管理等功能。最初的设计是为了简化应用程序的打包和部署。 - Containerd则是Google开源的一个轻量级容器管理系统,它的设计理念更倾向于模块化,聚焦于容器的运行和生命周期管理,提供了一个开放的接口供其他工具和服务集成。 2. **架构与组件**: - Docker有一个单一的二进制文件,包含了完整的功能集。 - Containerd本身只是一个守护进程,负责管理容器实例和镜像,但它依赖于其他的库(如runc)来执行实际的容器运行,并通过API与客户端交互。 3. **生态系统支持**: - Docker拥有庞大的社区和生态系统,包括大量的插件、工具和镜像仓库(Docker Hub)。 - Containerd的生态相对较新,但仍得到了业界的认可和支持,很多现代云原生平台如Kubernetes都采用了Containerd作为其底层容器 runtime。 4. **性能与资源占用**: - Containerd通常比Docker更轻量级,因为它的职责更为专门,这意味着它可能会占用较少的系统资源。 5. **灵活性和扩展性**: - Containerd更适合微服务架构和容器编排环境,可以与其他技术栈如cri-o, rkt等结合,提供更多的选择。 - Docker虽然也能用于编排,但在复杂场景下可能需要额外的工具(如Docker Compose或Kubernetes)来实现更高级的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值