
easzlab/k8s-dns-node-cachemirrorepo 是一个 Docker 镜像仓库,主要用于缓存 kubeasz(一款轻量级 Kubernetes 集群部署工具)所需的关键依赖镜像。该镜像源自 k8s.gcr.io/dns/k8s-dns-node-cache,并扩展缓存了 kubeasz 部署过程中依赖的其他核心镜像。其核心用途是在网络受限环境(如无法直接访问 k8s.gcr.io 等外部仓库)中,为 kubeasz 提供本地镜像源,简化并加速 Kubernetes 集群的离线或本地化部署流程。
k8s-dns-node-cache 等),避免重复从外部仓库拉取。k8s.gcr.io、gcr.io 等仓库,支持完全离线环境下的 Kubernetes 部署。k8s.gcr.io、docker.io 等外部镜像仓库的场景(如企业内网、隔离网络环境)。根据实际环境选择以下方式获取镜像:
bashdocker pull easzlab/mirrorepo:latest # 假设镜像托管于 easzlab 仓库,具体地址需参考官方说明
若通过离线文件传输获取镜像包(如 mirrorepo.tar),使用以下命令加载:
bashdocker load -i mirrorepo.tar
使用 mirrorepo 镜像缓存时,需修改 kubeasz 配置,指定镜像仓库为本地或私有仓库地址。
编辑 kubeasz 的全局配置文件 kubeasz/clusters/${cluster-name}/conf/hosts(或 kubeasz/conf/globals.yml),设置镜像仓库相关参数:
yaml# 示例:指定本地镜像仓库地址(若 mirrorepo 镜像已推送到本地仓库) IMAGE_REPO: "192.168.1.100:5000" # 本地仓库地址,需替换为实际地址 # 若直接使用本地缓存镜像(无需仓库服务),可设置为 "localhost"
执行 kubeasz 部署脚本时,添加 --local 或 --offline 参数,强制使用本地镜像源:
bash# 例如,使用 ezdown 脚本下载依赖并指定本地镜像 cd kubeasz ./ezdown -D -l # -l 表示使用本地镜像
检查本地缓存的镜像列表,确保包含 kubeasz 所需的关键镜像(如 k8s-dns-node-cache):
bashdocker images | grep "k8s-dns-node-cache" # 验证目标镜像是否存在
若需将 mirrorepo 镜像推送到本地仓库供多节点访问,可使用 Docker Registry 搭建本地仓库:
bashdocker run -d -p 5000:5000 --name local-registry registry:2
bashdocker tag easzlab/mirrorepo:latest 192.168.1.100:5000/mirrorepo:latest # 替换为本地仓库地址 docker push 192.168.1.100:5000/mirrorepo:latest
bash# 在每个节点的 /etc/docker/daemon.json 中添加 { "insecure-registries": ["192.168.1.100:5000"] }
bashsystemctl restart docker
通过 kubeasz 部署 Kubernetes 时,直接引用本地缓存的 mirrorepo 镜像:
bash# 进入 kubeasz 目录,执行部署命令(假设已完成 hosts 配置) cd kubeasz ./ezctl setup 1p # 部署单节点 K8s 集群,自动使用本地镜像
sha256sum 比对校验值)。



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务