一、针对镜像操作
1、下载nginx镜像 -n指定命名空间
ctr -n=default image pull --all-platforms docker.io/library/nginx:1.18.0
ctr -n=default image pull --platform linux/amd64 docker.io/library/nginx:1.18.0
- -n:指定命名空间,镜像下载到什么命名空间,后续就只能才这个命名空间下找到该镜像。
- –all-platforms:提取所有平台镜像
- –platform:提取指定平台镜像
2、查看镜像
ctr -n=default image list
3、导出镜像
ctr image export nginxv1.tar.gz docker.io/library/nginx:1.18.0
4、导入镜像
ctr image import nginxv1.tar.gz
5、删除镜像
ctr image remove docker.io/library/nginx:1.18.0
6、挂载镜像
将 nginx:1.18.0镜像 挂载到 /mnt 下
ctr image mount docker.io/library/nginx:1.18.0 /mnt/
7、卸载镜像
umount /mnt
8、镜像打标签
ctr image tag docker.io/library/nginx:1.18.0 16.32.15.100/nginx:1.18.0
9、镜像检查
ctr image check
二、针对容器操作
- 静态容器:只创建容器并不运行容器内程序
- 动态容器:创建容器并运行容器内程序
1、创建静态容器
创建容器镜像必须在本地存在,否则无法创建。
ctr container create docker.io/library/nginx:1.18.0 nginx-1
2、查看容器
ctr container ls
ctr container list
3、查看容器详细信息
ctr container info nginx-1
4、启动静态容器
静态容器启动后会成为动态容器
ctr task start -d nginx-1
- -d:后台运行,类似docker run -d
5、查看任务
task表示容器内运行的进程信息
ctr task ls
ctr task ps nginx-1
6、进入容器内
ctr task exec --exec-id 1 nginx-1 sh
curl http://127.0.0.1
- –exec-id:指定要执行的命令的ID,该参数唯一
7、运行一个动态容器
ctr run -d --net-host docker.io/library/nginx:1.18.0 nginx-2
ctr task ls
- –net-host : 指定网络,host表示和宿主机共享网络
8、挂起容器
ctr task pause nginx-1
ctr task ls
9、恢复容器
ctr task resume nginx-1
ctr task ls
10、停止容器
ctr task kill nginx-1
11、删除容器
ctr task rm nginx-1