在 Linux 下更换 Docker 镜像源

使用公开镜像源

由于一些众所周知的原因,在国内访问 Docker 的时候会炸掉

解决问题的方法也很简单。我们使用SSH,使用自己习惯的文本编辑器打开文件 /etc/docker/daemon.json

只需要给 "registry-mirrors" 键设置一个镜像源列表即可~

可以在 Github 项目上查看存活的镜像源: Github Gist 链接

自己部署镜像源

我在换源的时候发现上面的源全部不可用,于是便搜索了另外的解决方式:通过 Cloudflare 自己部署一个镜像。众所周知咱们的赛博大善人 CF 提供免费的 Worker,允许在云端运行一个实例。而 CF 的服务器节点遍布世界各地,自然是可以访问 docker, 也可以被我们访问到的。

我使用了 Github 上 tomwei7 的项目 hammal.

1. 安装环境

首先安装 Cloudflare 的开发环境. 在电脑已经安装 npm 的情况下,直接通过 npm 或 yarn 安装即可.

npm install wrangler --save-dev
yarn add --dev wrangler

2. 修改项目

我们将项目 Fork 到自己的 Github 存储库中

接着,通过 git 客户端将代码拉取到本地

克隆完成后,首先打开项目文件夹中的 wrangler.toml 文件

我们从第1、2个参数开始填写。直接在 Cloudflare Worker 中点击创建 Worker, 并把自己选择的名字填入 1 号空 name 中

接着,在 Worker 的列表那一页中,可以在右侧找到自己的账户ID,直接复制并粘贴到第二个空即可

保存文件,执行指令:wrangler kv:namespace create hammal_cache

现在,屏幕上就出现了缓存实例的id,复制并填入3号空位中

一切完成后,提交更改到存储库中:

现在使用指令 wrangler publish 发布这个 Worker,或者在 Worker 的设置网页中,选择连接 Git 存储库,选择这个存储库,并保持默认设置即可


现在已经部署完毕。但是访问可能会发现还是有问题,因为 CF Worker 的域名可能被 GFW 了,现在在 Worker 设置中添加自定义域名即可。

添加完成后,按上方步骤加入 docker 的配置文件中,重启 docker 后,可以使用指令 docker info 查看是否配置成功

chevron_left
chevron_right

Leave a comment

您的邮箱地址不会被公开。 必填项已用 * 标注

Comment
Name
Email
Website