dockerhub被墙后macos如何搭建本地minikube的环境

2024-06-12 19:12

本文主要是介绍dockerhub被墙后macos如何搭建本地minikube的环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

macos上如何安装

最近因为dockerhub在已经在国内被墙了,因此在安装minikube 存在一些镜像拉不下来的情况,当然最好的办法是直接使用翻墙vpn即可使用。

但是因为我目前的电脑是公司电脑,不允许安装此类软件,因此我要想办法如何把镜像down下来。

macos上安装minikube 相对几个命令搞定。

0.报错信息

➜  ~ kubectl get pods -n kubernetes-dashboard
NAME                                        READY   STATUS             RESTARTS   AGE
dashboard-metrics-scraper-b5fc48f67-hp846   0/1     ImagePullBackOff   0          2m27s
kubernetes-dashboard-779776cb65-ll9w6       0/1     ImagePullBackOff   0          2m27s

具体报错信息

kubectl get events -n kubernetes-dashboard

8m21s       Warning   Failed             pod/dashboard-metrics-scraper-65457555b7-cp557    Error: ErrImagePull
4m46s       Normal    BackOff            pod/dashboard-metrics-scraper-65457555b7-cp557    Back-off pulling image "kubernetesui/metrics-scraper:v1.0.1"
8m7s        Warning   Failed             pod/dashboard-metrics-scraper-65457555b7-cp557    Error: ImagePullBackOff
4m22s       Normal    Scheduled          pod/dashboard-metrics-scraper-65457555b7-jff4r    Successfully assigned kubernetes-dashboard/dashboard-metrics-scraper-65457555b7-jff4r to minikube
2m50s       Normal    Pulling            pod/dashboard-metrics-scraper-65457555b7-jff4r    Pulling image "kubernetesui/metrics-scraper:v1.0.1"
2m49s       Warning   Failed             pod/dashboard-metrics-scraper-65457555b7-jff4r    Failed to pull image "kubernetesui/metrics-scraper:v1.0.1": Error response from daemon: Get "https://registry-1.docker.io/v2/": EOF

ImagePullBackOff 状态表示 Kubernetes 无法拉取指定的 Docker 镜像。这通常是因为镜像名称或标签不正确,或者 Kubernetes 无法访问镜像仓库。以下是一些可能的解决方法:

1. 检查镜像名称和标签

确保你使用的镜像名称和标签是正确的。例如,kubernetes-dashboarddashboard-metrics-scraper 的镜像名称和标签是否正确。

你可以通过以下命令查看 Pod 的详细信息,包括镜像名称和标签:

kubectl describe pod <pod-name> -n kubernetes-dashboard

2. 确保镜像存在于镜像仓库

确保镜像存在于你指定的镜像仓库中。你可以尝试手动拉取镜像以验证:

docker pull kubernetesui/metrics-scraper:v1.0.8
docker pull kubernetesui/dashboard:v2.0.0

3. 使用 Minikube 加载本地镜像

如果你已经在本地 Docker 环境中拉取了镜像,可以使用 Minikube 将本地镜像加载到 Minikube 集群中:

minikube image load kubernetesui/metrics-scraper:v1.0.8
minikube image load kubernetesui/dashboard:v2.0.0

4. 配置镜像拉取策略

确保你的 Pod 配置中使用了正确的镜像拉取策略。你可以在 Pod 的 YAML 文件中设置 imagePullPolicyIfNotPresentNever,以确保 Kubernetes 使用本地镜像而不是尝试从远程仓库拉取。

例如:

spec:containers:- name: kubernetes-dashboardimage: kubernetesui/dashboard:v2.0.0imagePullPolicy: IfNotPresent- name: dashboard-metrics-scraperimage: kubernetesui/metrics-scraper:v1.0.8imagePullPolicy: IfNotPresent

5. 检查网络连接

确保你的 Kubernetes 集群能够访问外部网络。如果你在防火墙或代理后面,可能需要配置网络设置以允许访问 Docker 镜像仓库。

6. 查看事件日志

查看事件日志以获取更多关于镜像拉取失败的详细信息:

kubectl get events -n kubernetes-dashboard

7. 手动更新镜像

如果你已经在本地 Docker 环境中拉取了镜像,可以手动更新 Deployment 以使用本地镜像:

kubectl set image deployment/kubernetes-dashboard kubernetes-dashboard=kubernetesui/dashboard:v2.0.0 -n kubernetes-dashboard
kubectl set image deployment/dashboard-metrics-scraper dashboard-metrics-scraper=kubernetesui/metrics-scraper:v1.0.8 -n kubernetes-dashboard

8.解决方案

因此我选用了从可以下载到此镜像的地方下载镜像

docker pull kubernetesui/metrics-scraper:v1.0.8
docker images
docker  save -o metrics-scraper.tar kubernetesui/metrics-scraper:v1.0.8
docker  load -i metrics-scraper.tar 
​
docker save -o dashboard.tar kubernetesui/dashboard:v2.0.0
docker load -i dashboard.tar

然后,我导入到镜像仓库后,使用第七步,直接手动更新了 Deployment 以使用本地镜像

’在执行

minikube dashboard

这篇关于dockerhub被墙后macos如何搭建本地minikube的环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1055085

相关文章

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

python常见环境管理工具超全解析

《python常见环境管理工具超全解析》在Python开发中,管理多个项目及其依赖项通常是一个挑战,下面:本文主要介绍python常见环境管理工具的相关资料,文中通过代码介绍的非常详细,需要的朋友... 目录1. conda2. pip3. uvuv 工具自动创建和管理环境的特点4. setup.py5.

苹果macOS 26 Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色

《苹果macOS26Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色》在整体系统设计方面,macOS26采用了全新的玻璃质感视觉风格,应用于Dock栏、应用图标以及桌面小部件等多个界面... 科技媒体 MACRumors 昨日(6 月 13 日)发布博文,报道称在 macOS 26 Tahoe 中

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可

python获取cmd环境变量值的实现代码

《python获取cmd环境变量值的实现代码》:本文主要介绍在Python中获取命令行(cmd)环境变量的值,可以使用标准库中的os模块,需要的朋友可以参考下... 前言全局说明在执行py过程中,总要使用到系统环境变量一、说明1.1 环境:Windows 11 家庭版 24H2 26100.4061

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

Macos创建python虚拟环境的详细步骤教学

《Macos创建python虚拟环境的详细步骤教学》在macOS上创建Python虚拟环境主要通过Python内置的venv模块实现,也可使用第三方工具如virtualenv,下面小编来和大家简单聊聊... 目录一、使用 python 内置 venv 模块(推荐)二、使用 virtualenv(兼容旧版 P

pytest+allure环境搭建+自动化实践过程

《pytest+allure环境搭建+自动化实践过程》:本文主要介绍pytest+allure环境搭建+自动化实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、pytest下载安装1.1、安装pytest1.2、检测是否安装成功二、allure下载安装2.

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv