Docker拉取失败,利用 Git将 Docker镜像重新打 Tag 推送到阿里云等其他公有云镜像仓库里

news/2024/10/5 23:00:58/

目录

一、开通阿里云容器镜像服务

二、Git配置

三、去DockerHub找镜像

四、编写images.txt文件

​五、演示

六、其他注意事项


最近一段时间 Docker 镜像一直是 Pull 不下来的状态,想直连 DockerHub 是几乎不可能的。更糟糕的是,很多原本可靠的国内镜像站,例如一些大厂和高校运营的,也陆续关停了,这对我们这些个人开发者和中小企业来说是挺难受的。之前,通过这些镜像站,我们可以快速、方便地获取所需的 Docker 镜像,现在这条路也不行了。感觉这次动作不小,以后想直接访问 DockerHub 是不可能了。所以我们得想办法搭建自己的私有镜像仓库

一、开通阿里云容器镜像服务

阿里云官网找到容器镜像服务ACR

选择个人实例

点击创建个人版

点击设置登录密码

点击创建命名空间

点击访问凭证,可以看到用户名,仓库地址,这个设置固定密码一定要设值,一般就是在输入一遍上面设置的密码,发个短信验证

二、Git配置

链接地址:https://github.com/tech-shrimp/docker_image_pusher

输入上述链接地址,点击fork,将项目拷贝到自己名下,直接点击create fork

进入自己的项目,点击setting

点击Actions

继续点击,然后添加四个环境变量

第一个是,阿里云命名空间(ALIYUN_NAME_SPACE)

第二个是,用户名(ALIYUN_REGISTRY_USER)

第三个是,密码(ALIYUN_REGISTRY_PASSWORD)

第四个是,仓库地址(ALIYUN_REGISTRY)

一次添加就行,添加完之后,点击Actions,然后点击绿色按钮

点击code代码这里,点击images.txt,进行编辑,点击右上角铅笔,想添加什么镜像,就把镜像添加到下面就可以了

三、去DockerHub找镜像

链接地址:hub.docker.com

直接搜索就行,我以jenkins为例

就比如我想选择这一个,点击即可

选择版本号

将这部分填写到images.txt文件里

四、编写images.txt文件

写入,然后保存提交即可

然后点击Actions,会发现构建已经开始了

构建完成

阿里云镜像仓库查看,发现刚刚添加的jenkins已经添加进来了

点击查看详情,有各种命令,等会拉取镜像就是这个命令,还有一些版本号等等

五、演示

我找一个阿里云的服务器试一下,现在的话,只有一个mysql的镜像

我先用正常的方式拉取镜像,会发现一直处于加载状态,一直拉取不下来

用这个新方式试一下,发现正在下载

六、其他注意事项

比如启动镜像容器时,也是要修改一下的

改成咱仓库的那个路径镜像就行


http://www.ppmy.cn/news/1473411.html

相关文章

Python字符编码检测利器: chardet库详解

Python字符编码检测利器: chardet库详解 1. chardet简介2. 安装3. 基本使用3.1 检测字符串编码3.2 检测文件编码 4. 高级功能4.1 使用UniversalDetector4.2 自定义编码检测 5. 实际应用示例5.1 批量处理文件编码5.2 自动转换文件编码 6. 性能优化7. 注意事项和局限性8. 总结 在…

HY Lisp 读取宏(reader macro)学习

在学习HY lisp语言的时候HY编程快速入门实践课第三章 HY宏入门-CSDN博客,学习到了读取宏(reader macro),尝试将其概念弄明白。 首先,读取宏是Lisp语言中都有的一种概念,所以可以通过任意一种Lisp语言的文档…

黑芝麻科技A1000简介

文章目录 1. A1000 简介2. 感知能力评估3. 竞品对比4. 系统软件1. A1000 简介

【ARM 常见汇编指令学习 7.1 -- LDRH 半字读取指令】

请阅读【嵌入式开发学习必备专栏】 文章目录 LDRH 使用介绍LDRH(Load Register Half-word)总结 LDRH 使用介绍 在ARMv9架构中,汇编指令LDRH用于从内存中载入数据到寄存器的指令,下面将分别对它进行详细介绍: LDRH&am…

spring-boot-starter-data-redis是否支持reactive响应式编程

开源项目SDK:https://github.com/mingyang66/spring-parent 个人文档:https://mingyang66.github.io/raccoon-docs/#/ spring-boot-starter-data-redis: 使用传统的基于阻塞的I/O编程模型,这意味着当你调用Redis操作时&#xff0…

手把手教你生成一幅好看的AI图片

很多人看到别人用SD生成出来的图片感到非常的羡慕,因为即使给了他们最好的SD软件,他们也是词穷,不知道该如何去描述要生成的图片。 别急,这篇文章会一步步的教会你怎么才能生成一个好看的AI图片。 跟着我,别走丢。 …

IOS17闪退问题Assertion failure in void _UIGraphicsBeginImageContextWithOptions

最近项目更新到最新版本IOS17,发现一个以前的页面突然闪退了。原来是IOS17下,这个方法 UIGraphicsBeginImageContext(CGSize size) 已经被移除,原参数如果size为0的话,会出现闪退现象。 根据说明,上述方法已经被替换…

在mfc程序中,如何用c++找到exe文件所在的路径

在 MFC&#xff08;Microsoft Foundation Class&#xff09;程序中&#xff0c;你可以使用 GetModuleFileName 函数来获取当前运行的可执行文件&#xff08;.exe&#xff09;的路径。 以下是一个示例代码&#xff1a; #include <afxwin.h> #include <iostream>in…