离线 docker run搭建rancher后,自带的k3s报错无法拉取镜像

Rancher Server 设置

  • Rancher 版本:2.7.5
  • 安装选项 (Docker install/Helm Chart):
    • 如果是 Helm Chart 安装,需要提供 Local 集群的类型(RKE1, RKE2, k3s, EKS, 等)和版本:
  • 在线或离线部署:离线

下游集群信息

  • Kubernetes 版本:
  • Cluster Type (Local/Downstream):
    • 如果 Downstream,是什么类型的集群?(自定义/导入或为托管 等):

用户信息

  • 登录用户的角色是什么? (管理员/集群所有者/集群成员/项目所有者/项目成员/自定义):
    • 如果自定义,自定义权限集:

主机操作系统:centos7.4

问题描述:(combined from similar events): Failed to create pod sandbox: rpc error: code = DeadlineExceeded desc = failed to get sandbox image “rancher/mirrored-pause:3.6”: failed to pull image “rancher/mirrored-pause:3.6”: failed to pull and unpack image “docker.io/rancher/mirrored-pause:3.6”: failed to resolve reference “docker.io/rancher/mirrored-pause:3.6”: failed to do request: Head “https://registry-1.docker.io/v2/rancher/mirrored-pause/manifests/3.6”: dial tcp 103.240.182.55:443: i/o timeout

重现步骤:

结果:

预期结果:

截图:

其他上下文信息:

日志
![ed656d08e15a537c5df072765f98803|690x379](upload://46l6R6Bz4OzKiFtguOrBOtbZLtz.png)


参考:如何使用国内资源安装 Rancher

你好
docker run -d --restart=unless-stopped
-p 80:80 -p 443:443
–privileged
-e CATTLE_SYSTEM_DEFAULT_REGISTRY=registry.cn-hangzhou.aliyuncs.com
–name rancher
registry.cn-hangzhou.aliyuncs.com/rancher/rancher:v2.8.4

这个单节点运行,我用的是本地的rancher镜像,rancher启动之后,里面自带的k3s一直去docker.io拉取镜像,是不是可以指定拉取它拉取镜像的地址?

这是我的命令
docker run -d --privileged --network=my-network -p 80:80 -p 443:443 -v /opt/data/rancher-2.7.5_data:/var/lib/rancher/ --restart=always --name rancher-v2.7.5 rancher/rancher:v2.7.5

用这个命令,就回通过阿里云去拉取镜像了啊

我重新用你的命令搭建了一下,还是这样的报错
[正在上传:7006ecac1d4d52bd1d6888a5a7c83c1.png…]

图片没上传成功


就是这样的

你把你执行的命令发发出来

docker run -d
–privileged
–network=my-network
-p 80:80 -p 443:443
-v /opt/data/rancher-2.7.5_data:/var/lib/rancher/
-e CATTLE_SYSTEM_DEFAULT_REGISTRY=registry.cn-hangzhou.aliyuncs.com
–restart=unless-stopped
–name rancher-v2.7.5
rancher/rancher:v2.7.5
我是已经拉取到本地的镜像

大神还在吗

你把这个去掉就好了

-v /opt/data/rancher-2.7.5_data:/var/lib/rancher/
这个参数我记得只是映射存储的,为什么会跟这个有关系呀

试了一下 确实可以拉镜像了

可以参考这部分:

这里其实有个问题的
$ cp /var/lib/rancher/k3s/agent/images/k3s-airgap-images.tar /output/k3s-airgap-images.tar
/var/lib/rancher/k3s/agent/images/k3s-airgap-images.tar 容器中的这个镜像包是自带的吗?我运行的容器里面没有这个镜像包

参考:Docker run 启动 rancher,由于映射数据目录导致 rancher/mirrored-pause 无法拉取 - #2,来自 ksd

大佬 还有个问题:docker run --rm --entrypoint “” -v $(pwd):/output rancher/rancher:v2.7.5 cp /var/lib/rancher/k3s/agent/images/k3s-airgap-images.tar /output/k3s-airgap-images.tar
这条命令可以保存/var/lib/rancher/k3s/agent/images/k3s-airgap-images.tar 镜像文件,为啥命令可以保存下来,而我运行容器,进去后却找不到呢?

没明白

就是这条命令可以保存k3s-airgap-images.tar到本地,但是docker run 运行容器后,进入容器找不到这个文件/var/lib/rancher/k3s/agent/images/k3s-airgap-images.tar文件