ctr和crictl命令
ctr 默认命名空间是default ,如果要查看k8s 运行的pod,需要指定命名空间:"ctr -n=k8s.io "
- crictl 警告去除
crictl config runtime-endpoint unix:///run/containerd/containerd.sock
crictl config image-endpoint unix:///run/containerd/containerd.sock
2
- docker 拉取,导出镜像
docker pull yfklife.cn/base/nginx:1.25.0
docker save yfklife.cn/base/nginx:1.25.0 > nginx-1.25.0.tar
- 查看镜像
ctr -n k8s.io i ls
- 导入镜像
ctr -n=k8s.io i import --all-platforms nginx-1.25.0.tar
- 导出镜像
ctr -n=k8s.io i export yfklife.cn/base/nginx:1.25.0 --platform=linux/amd64 nginx-1.25.0.tar
ctr -n=k8s.io i export yfklife.cn/base/nginx:1.25.0 --all-platforms nginx-1.25.0.tar
- 重新定制tag
ctr -n=k8s.io images tag yfklife.cn/base/nginx:1.25.0 nginx:1.25.0
- 检查镜像的完整性
ctr -n=k8s.io i check
- 删除镜像
ctr -n k8s.io i delete nginx:1.25.0
- 创建运行一个container 命名:test_001
ctr -n k8s.io run nginx:1.25.0 test_001 bash
*未运行的container,create的容器不会处于未运行的状态,相当于docker create *
ctr -n k8s.io c create nginx:1.25.0 nginx
- 查看container信息
ctr c info test_001
- 删除container
ctr c rm test_001
- 进入container
ctr -n k8s.io task exec --exec-id $RANDOM -t test_001 bash
- 查看
ctr -n k8s.io c list
ctr -n k8s.io task list
- 查看容器内cpu内存信息
ctr t metrics test_001
- 停止
停止只是在task里面看不到,但实际container没有删除
ctr -n k8s.io task kill -s kill test_001
- 启动
ctr task start -d test_001
- 删除
ctr -n k8s.io c delete test_001
ctr ns create test
ctr ns ls
ctr ns rm test
# nerdctl命令
感觉ctr 命令太难记了,安装nerdctl 来使用,命令使用和docker几乎一致
wget https://github.com/containerd/nerdctl/releases/download/v0.23.0/nerdctl-full-0.23.0-linux-amd64.tar.gz
tar xf nerdctl-full-0.23.0-linux-amdj64.tar.gz -C /usr/local
nerdctl --help
2
3
4
5