Skip to content
首页/server/本文内容

解决docker.io无法访问,导致calico等插件无法安装问题

出于某些原因,docker.io在国内无法访问,且目前的一些国内镜像仓库也一个个的沦陷,基于此背景下,可通过本地先将镜像包下载下来,再上传至服务器后离线安装镜像

前提条件

需要本地能访问docker之类的网站

步骤(以calico网络插件为例)

确定你所需的 Calico 版本,可以通过查看官方文档或自己的 Kubernetes 版本匹配适当的 Calico 版本。假设使用 Calico v3.27.3:

bash
CALICO_VERSION=v3.27.3

拉取 Calico 镜像

bash
docker pull calico/cni:$CALICO_VERSION
docker pull calico/pod2daemon-flexvol:$CALICO_VERSION
docker pull calico/node:$CALICO_VERSION
docker pull calico/kube-controllers:$CALICO_VERSION

保存镜像到文件

bash
docker save -o calico-cni.tar calico/cni:$CALICO_VERSION
docker save -o calico-pod2daemon-flexvol.tar calico/pod2daemon-flexvol:$CALICO_VERSION
docker save -o calico-node.tar calico/node:$CALICO_VERSION
docker save -o calico-kube-controllers.tar calico/kube-controllers:$CALICO_VERSION

传输镜像到目标节点 将保存的 .tar 文件传输到离线节点。例如,使用 scp:

bash
scp calico-cni.tar calico-pod2daemon-flexvol.tar calico-node.tar calico-kube-controllers.tar user@target-node:/path/to/destination

在目标节点加载镜像

在目标节点上执行以下命令加载镜像:

bash
docker load -i calico-cni.tar
docker load -i calico-pod2daemon-flexvol.tar
docker load -i calico-node.tar
docker load -i calico-kube-controllers.tar

docker images

alt text

docker 离线安装

使用yumdownloader工具下载Docker和所有依赖包:

yumdownloader --resolve --destdir=. docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

使用scp命令将RPM包上传到目标服务器

scp ~/docker-rpms/*.rpm user@your_server:/path/to/target/directory

在目标服务器上安装RPM包

cd /path/to/target/directory
yum localinstall -y *.rpm

systemctl start docker
docker version
docker info

安装docker-compose


# 本机上传docker-compose 文件
mv  docker-compose /usr/local/bin

3、解决 docker-compose 命令权限不够问题: chmod +x /usr/local/bin/docker-compose
4、将docker的权限授权给普通用户:usermod -a -G docker adsys

一些docker离线安装包

containerd.io-1.6.33-3.1.el7.x86_64.rpm 下载

docker-buildx-plugin-0.14.1-1.el7.x86_64.rpm 下载

docker-ce-26.1.4-1.el7.x86_64.rpm 下载

docker-ce-cli-26.1.4-1.el7.x86_64.rpm 下载

docker-ce-rootless-extras-26.1.4-1.el7.x86_64.rpm 下载

docker-compose-plugin-2.27.1-1.el7.x86_64.rpm 下载

calico-cni.tar 下载

calico-kube-controllers.tar 下载

calico-node.tar 下载

calico-pod2daemon-flexvol.tar 下载

filebeat-8.13.3.tar 下载