今天在教同事Docker简单部署Asp.Net Core项目,pull镜像时突然出现下图中的错误:

因为微软在 2018 年五月之后,只会将相关镜像打包发布到 MCR 上。但是 MCR 对国内用户不太友好,以前只是慢点就忍了,现在直接超时就不能忍了。

在网上找了各种解决办法,有配置镜像加速器的,有改DNS地址的,统统不管用。

后面找到了下面两种方法,亲测可用。

一、使用 docker-mcr

docker-mcr是一位爱心人士做的加速器,打包成了dotnet工具,使用起来非常方便。

1、服务器安装了.net core3.1 sdk

我的服务器是Centos,下面附上安装命令:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

sudo yum install dotnet-sdk-3.1

2、安装docker-mcr工具:

dotnet tool install newbe.mcrmirror -g

3、拉取镜像

docker-mcr工具使用起来也非常简单:docker-mcr -i 镜像仓库:版本,例如要拉取 mcr.microsoft.com/dotnet/aspnet:3.1

docker-mcr -i mcr.microsoft.com/dotnet/aspnet:3.1

二、通过阿里云容器镜像服务构建自己的镜像库

这种方法要比第一种方法稍微复杂一点。

1、在自己的Github新建一个仓库存放Dockerfile文件。

可以参考:https://github.com/dotnetboy/mcr-images

2、在阿里云开容器镜像服务,个人实例。

3、进到个人实例 — 镜像仓库 — 创建镜像仓库 — 绑定代码源(github)

4、进入镜像仓库 — 点击左边的构建 — 添加构建规则 — 立即构建





不出意外,等待30s左右后就会构建成功。

这个时候,你就可以去你自己的仓库地址拉取代码了。

这种方法虽然有点麻烦,但毕竟是自己的用着也放心一点。

最新文章

  1. C++关于Condition Variable
  2. 优化 UltraEdit 打开大文件时的性能
  3. Unity UI on the HoloLens
  4. 【实践】jQuery实现三联联动
  5. 二模07day1解题报告
  6. Autowired注解的妙用---在Controller里的构造函数里获取需要注入的对象
  7. storage size of ‘oldact’ isn’t known
  8. Data Base MySQL的常用命令
  9. 提高SQL查询效率的常用方法
  10. Linux C 程序 数组(EIGHT)
  11. Sublime ctags 函数跳转插件安装
  12. 国内外MD5在线解密网站
  13. 如何在SpriteBuilder中使用BM Font Label
  14. 纯CSS实现展开列表
  15. 浮点数(double、float)的格式化问题及处理
  16. 分享MYSQL中的各种高可用技术
  17. sql 存储过程命名规范
  18. .net core批量注入实现类
  19. 一、JSP九大内置对象 二、JAVAEE三层架构和MVC设计模式 三、Ajax
  20. WIN-8“内置管理员无法激活此应用”问题

热门文章

  1. 如何使用 VS Code 远程连接矩池云主机
  2. springboot----四、yaml配置注入
  3. 微信小程序结合laravel完成签到功能
  4. Js-左侧折叠
  5. 实践2:如何使用word2vec和k-means聚类寻找相似的城市
  6. 写给开发人员的实用密码学(七)—— 非对称密钥加密算法 RSA/ECC
  7. ng-messages AngularJs 表单校验方式
  8. Microsoft Edge如何安装去广告插件
  9. 自动化运维之SaltStack初探
  10. Java study 4