镜像拉取过慢

大家有没有遇到过在阿里云服务器直接使用docker pull拉取镜像非常慢,可能还会超时。原因是docker默认的镜像仓库是dockerhub,由于是在国外,所以拉取速度很慢,更糟糕可能会失败。影响项目部署环境进度。

解决方案

思考:如果镜像仓库在国内,那么这样拉取速度是不是事半功倍。
我们首先想到的就是国内阿里云提供的ACR,现在我们只需要将dockerhub的镜像拉取到ACR上面,后面任何项目直接从ACR上面拉取,速度就会非常快。

镜像快速从dockerhub推送到ACR上面

阿里云镜像服务配置

  1. 点击右侧链接进入容器镜像服务(个人版)控制台界面:点我查看
  2. 按照下面的步骤创建命名空间:
    在这里插入图片描述
    在这里插入图片描述
  3. 按照下图所示操作,绑定Github账号:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  4. 设置访问阿里云镜像仓库密码,请按照下图所示操作:在这里插入图片描述
    在这里插入图片描述

GitHub相关配置

  1. 点击进入Docker镜像推送仓库:点我查看
  2. 按照下图所示操作将项目Fork到自己的仓库:
    在这里插入图片描述
    在这里插入图片描述
  3. 此时项目成功Fork到我们自己的仓库中,点击Settings:在这里插入图片描述
  4. 配置环境变量。按照下图所示操作,进入配置环境变量界面:
    在这里插入图片描述
  5. 请按照下图所示操作将4个Name-Secret对存储到Github:在这里插入图片描述

通过Github推送到阿里云镜像仓库

  1. 进入前面我们Fork的项目,点击上方的Actions,然后点击I understand my workflows, go ahead and enable them.同意协议:
    在这里插入图片描述
  2. 按照下图所示操作,进入到image.txt文件中:在这里插入图片描述
    在这里插入图片描述
  3. 点击右上角的小铅笔,进入编辑模式:在这里插入图片描述
  4. 将文件中的内容全部清空,后续替换为我们自己的镜像名和版本:在这里插入图片描述
    ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/dbb9de32a53f488fa127e8749df8cd0b.png
  5. 打开Dockerhub官网:点我查看
  6. 在上方搜索框中搜索Redis,按一下回车,第一个就是Redis官方镜像:在这里插入图片描述
  7. 点击Tags即可查看所有镜像:在这里插入图片描述
  8. 这里我想拉取7.4.1、7.4、7.2.6三个版本的镜像:直接复制镜像名和版本号即可(前面的docker pull不要复制):在这里插入图片描述
  9. 将前面复制的镜像名和版本号依次粘贴到images.txt中,效果图如下:在这里插入图片描述
  10. 如果没有什么问题,点击右上角的Commit changes提交代码:在这里插入图片描述
  11. 此时会弹出一个窗口,点击Commit changes:在这里插入图片描述
  12. 点击上方的Actions,即可查看镜像拉取和推送到阿里云的过程,如果出现绿色的对号,就说明镜像已经成功推送到阿里云镜像仓库:在这里插入图片描述
  13. 点击进入阿里云容器镜像服务控制台:点我查看。此时我们可以看到Dockerhub镜像通过Github成功推送到了阿里云镜像仓库,点击进入:在这里插入图片描述
  14. 接下来我们就可以按照阿里云给出的步骤一步一步拉取镜像了:在这里插入图片描述
  15. 使用Electerm连接到Linux服务器,登录到阿里云镜像仓库:
docker login --username=阿里云用户名 registry.cn-hangzhou.aliyuncs.com
  1. 从镜像仓库中拉取镜像:
docker pull registry.cn-hangzhou.aliyuncs.com/仓库名称/redis:[镜像版本号]

结论

以上方式就可以完美将dockerhub上面的镜像拉取到阿里云镜像仓库里面,方便后面项目快速搭建部署环境。

更多推荐