镜像拉取与运行
containerd 默认的三个名称空间(Namespace):
- default
- docker.io
- k8s.io
镜像拉取
将 hello-world:latest 镜像拉取到默认的名称空间中
将 busybox:latest 镜像拉取到 k8s.io 名称空间中
ctr -n k8s.io image pull docker.io/library/busybox:latest
ctr -n k8s.io image pull registry.aliyuncs.com/k8sxio/pause:3.6
分别查看拉取的镜像
运行容器
运行 hello-world:latest
分步运行 busybox 镜像
# 创建一个container(此时还未运行)
ctr -n k8s.io container create docker.io/library/busybox:latest busybox
# 创建一个task并后台运行
ctr -n k8s.io task start -d busybox
# 一步到位: ctr -n k8s.io run -d docker.io/library/busybox:latest busybox
查看创建的容器与 Task
查看该容器在宿主机的 PID
进入到容器内部执行 shell 命令
执行如下命令:
/ # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
/ # uname -r
4.18.0-348.23.1.el8_5.x86_64
- 只有 lo 网络卡,可以通过 CNI 插件的形式添加网卡实现外部网络通信
- 共享宿主机内核
删除创建的 Task 与容器
# 发送 SIGKILL 信号量杀死该容器
ctr -n k8s.io t kill -s SIGKILL busybox
ctr -n k8s.io task rm busybox
ctr -n k8s.io snapshots rm busybox
ctr -n k8s.io container rm busybox
ctr snapshots rm hello-world
ctr container rm hello-world
配置不安全镜像源
containerd 配置不安全镜像源的方式: