国内机器下载外网Docker镜像的解决方案如何下载Dockerhub官网的镜像下载criyle/go-judge:latest镜像

国内机器下载外网Docker镜像的解决方案

1、背景

        博主在搭建go-judge判题环境时,其中docker部署需要构建镜像,他的dockerfile文件依赖了criyle/go-judge:latest镜像,但该镜像在国内的服务器环境下会因为网络问题下不到,即便配置了docker加速器,本文介绍在无法下载外网镜像时的解决方案。

        楼主是基于宝塔面板管理docker,再次提醒,宝塔面板管理docker和直接使用命令行,本质是一样的。

2、方案1:配置镜像加速器

有些情况下配置镜像加速器即可解决,但如果你想下载的镜像只在官网仓库,则配置了加速器也下不到。

配置方法如下:

也可以直接打开配置文件配置

修改配置文件之后需要重启docker

如果你本身就是海外的云服务器,这里是可以搜索到内容的,就不需要额外配置了。

国内环境的服务器:

 海外环境的服务器:

3、方案2:有一台能访问外网的云服务器

        如果你是做全栈开发或者独立开发(偏向于后端、运维),非常建议有两台用于测试的服务器,一台国内的,一台海外的。

        比如在下载不到dockerhub官网镜像时,可以用海外的服务器直接搜索到镜像,因为海外机器可以连接到dockerhub官网。

        整体思路就是,在海外的机器上下载到docker镜像,然后再把镜像导出;然后在国内的机器上再导入。

拉取成功之后,在海外机器的服务器,本地镜像就有了。

我们将镜像导出到海外机器的本地目录,比如我们选择导出到/home下,叫go-judge.tar: 

下载到自己的Windows机器上

下载到文件之后,再上传到国内机器的某个目录,通过以下方式导入到国内服务器:

之后就可以正常使用了。

以上基于宝塔面板演示,本质上和使用docker命令一样,自行搜索。

4、方案3:使用github+阿里云镜像仓库海外构建

        阿里云上创建镜像仓库,一定要选择海外构建,配合github上创建一个dockerfile,可以构建自己想要的镜像。

首先github项目的情况是这样:

然后到阿里云下创建镜像仓库:

一定要选择海外构建,关联自己的github账号

国内机器上Docker添加仓库:

参考文章:无法下载外网Docker镜像的解决方案 - 陌上荼靡 - 博客园

5、方案4:criyle/go-judge:latest镜像可私信楼主获取

这个镜像博主已本地备份,需要可私信博主。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

随风浪仔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值