参考
-
https://github.com/containerd/nerdctl
安装
安装
下载地址: 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
选项指定需要导入的压缩包。
其他命令
- 命令操作 基本上和 docker 一致
- 参见 实战:Containerd高级命令行工具nerdctl安装及使用-20211025