【Docker&Containerd】使用docker pull 和crictl pull命令拉取镜像导入至本地仓库

文章目录

场景需求说明

因docker镜像下载受阻。

登录亚马逊云控制台,创建EC2实例

SSH连接EC2实例

bash 复制代码
C:\Users\xyb>ssh -i <密钥.pem> ec2-user@<公网IP地址/弹性IP地址>

安装Docker

bash 复制代码
[root@ip-10-0-10-183 ~]# yum install -y docker


[root@ip-10-0-10-183 ~]# systemctl daemon-reload
[root@ip-10-0-10-183 ~]# systemctl start docker && systemctl enable docker
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.


[root@ip-10-0-10-183 ~]# docker info
Client:
 Version:    25.0.3
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.0.0+unknown
    Path:     /usr/libexec/docker/cli-plugins/docker-buildx

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 25.0.3
 Storage Driver: overlay2
  Backing Filesystem: xfs
  Supports d_type: true
  Using metacopy: false
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 64b8a811b07ba6288238eefc14d898ee0b5b99ba
 runc version: 4bccb38cc9cf198d52bebf2b3a90cd14e7af8c06
 init version: de40ad0
 Security Options:
  seccomp
   Profile: builtin
  cgroupns
 Kernel Version: 6.1.92-99.174.amzn2023.x86_64
 Operating System: Amazon Linux 2023.4.20240611
 OSType: linux
 Architecture: x86_64
 CPUs: 2
 Total Memory: 3.813GiB
 Name: ip-10-0-10-183.ec2.internal
 ID: 437e11f3-e1e3-4507-bc6d-2de96b64a77d
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

拉取所需要的镜像

bash 复制代码
[root@ip-10-0-10-183 ~]# docker pull docker.io/calico/cni:v3.25.0
v3.25.0: Pulling from calico/cni
bc84ed7b6a65: Pull complete
ae5822c70dac: Pull complete
5e4c3414e9ca: Pull complete
8833c0c1f858: Pull complete
8729f736e48f: Pull complete
79eb57bec78a: Pull complete
84d025afc533: Pull complete
df79b6dbf625: Pull complete
4f4fb700ef54: Pull complete
Digest: sha256:a38d53cb8688944eafede2f0eadc478b1b403cefeff7953da57fe9cd2d65e977
Status: Downloaded newer image for calico/cni:v3.25.0
docker.io/calico/cni:v3.25.0
[root@ip-10-0-10-183 ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
calico/cni   v3.25.0   d70a5947d57e   17 months ago   198MB

使用SecureFX传输工具拉取镜像至本地

上传镜像至本地服务器中

使用crictl命令导入镜像

bash 复制代码
docker pull docker.io/calico/kube-controllers:v3.26.1
#docker拉取镜像
 
docker save -o kube-controllers.tar docker.io/calico/kube-controllers:v3.26.1
#docker导出镜像
 
ctr -n k8s.io  image import cni.tar  docker.io/calico/cni:v3.25.0

ctr -n k8s.io  image import cni.tar  registry.aliyuncs.com/google_containers/cni:v3.25.0
#ctr导入镜像
 
crictl images
#查看镜像是否导入成功
 
kubectl get pod -A -o wide	
#查看pod是否运行
 
sudo scp kube-controllers.tar k8s@node1:/home/k8s
#把docker导出的包传到其它节点


#使用ctr命令指定命名空间导入镜像
ctr -n=k8s.io image import cni.tar

#查看镜像,可以看到可以查询到了
crictl images

[root@node01 ~]# kubectl get pods -n kube-system
NAME                                       READY   STATUS    RESTARTS   AGE
calico-kube-controllers-658d97c59c-fzmmj   1/1     Running   0          56m
calico-node-5fdwc                          1/1     Running   0          23m
calico-node-k5smq                          1/1     Running   0          56m
coredns-66f779496c-5qxnw                   1/1     Running   0          88m
coredns-66f779496c-tg9vb                   1/1     Running   0          88m
etcd-master01                              1/1     Running   0          89m
kube-apiserver-master01                    1/1     Running   0          89m
kube-controller-manager-master01           1/1     Running   0          89m
kube-proxy-thm89                           1/1     Running   0          89m
kube-proxy-tpcdh                           1/1     Running   0          23m
kube-scheduler-master01                    1/1     Running   0          89m
相关推荐
Lill_bin3 小时前
报表生成---JFreeChart
docker·信息可视化·zookeeper·云原生·容器·jenkins
别挡9 小时前
CentOS Stream 8中安装和使用 Docker
linux·docker·centos
愤怒的代码10 小时前
Centos使用阿里云镜像安装docker
linux·docker·centos
汪公子49210 小时前
使用docker部署考试系统
docker
大江东去了吗11 小时前
k8s HPA
云原生·容器·kubernetes
好奇的菜鸟12 小时前
如何使用Docker快速启动Nginx服务器
服务器·nginx·docker
花菜回锅肉12 小时前
开源可视化大屏superset Docker环境部署
数据仓库·docker·容器·开源·superset
wd52052112 小时前
常用环境部署(十七)——Docker安装pritunl+openvpn
运维·docker·容器
Watermelo61714 小时前
在线编程实现!如何在Java后端通过DockerClient操作Docker生成python环境
java·spring boot·docker·微服务·云原生·容器·devops
摸鱼的张三15 小时前
Docker的基本概念和优势
docker