原文作者Qist,原文链接 传送门
1 |
原文链接:https://github.com/qist/cloudflare-proxy |
一、创建api token:
1、打开地址
1 |
https://dash.cloudflare.com/profile/api-tokens |
2、点击【创建令牌】
3、”编辑 Cloudflare Workers” -> 【使用模板】
4、
1 2 3 |
帐户资源选择【自己的用户】-> 区域资源选择【自己需要部署的域名】-> 点击【继续以显示摘要】 |
5、创建令牌记录好生成token
1 |
RDmBmP3wBDefqbc4C_xttf09hBekeEgKdRtvCd9G |
测试此令牌
1 2 3 |
curl -X GET "https://api.cloudflare.com/client/v4/user/tokens/verify" \ -H "Authorization: Bearer RDmBmP3wBDefqbc4C_xttf09hBekeEgKdRtvCd9G" \ -H "Content-Type:application/json" |
二、github action 配置:
1 |
点你的右上角头像->Your profile->选择你fork的项目cloudflare-proxy |
在Code那个栏目里,待会儿Actions也是点击那里
1 |
settings->"secrets and variables"->Actions->(选择密钥Secrets,不要选择Variables) |
New repository secret添加如下变量:
1 2 3 4 5 6 7 8 |
YOUR_SECRET_NAME里填写 CF_API_TOKEN Secret里填写你在cloudflare上申请的token 就是上面生成的token->Add secrets,别着急, 还要添加一个变量 CLOUDFLARE_ACCOUNT_ID,Secret里就是cloudflare的account id,就是登陆id, 我是用邮箱登陆,这里用tubolongshen@126.com->Add secrets |
1 |
回到在Code那个栏目里就在旁边的Actions也是点击那里点击actions 激活github action 自动构建部署 |
然后修改src/index.js 修改routes 配置
1 2 3 4 5 6 |
routes里修改为你的域名比如 "docker.w91m.com": "https://registry-1.docker.io" 修改所有boown.com 为 w91m.com 你的域名。 后面的https://registry-1.docker.io不用修改, 把下面几个常用的仓库都修改了。点保存提交。 |
三、域名解析设置
1 2 3 4 5 6 7 8 |
访问:https://dash.cloudflare.com/ 回到cf首页 点击左边的栏目【Workers和Pages】-> 概述 -> 创建workers -> 取名【cloudflare-proxy】-> 【部署】 点击菜单栏 设置->触发器->添加自定义域 添加完成后访问:https://image.w91m.com/ 把src/index.js里改的docker.xxx.com,你添加了几个仓库就写几个域名上去,填写完等5-10分钟就行了 |
更改worker.js内容
1 |
点击编辑代码:把github index.js内容复制到worker.js并保存 |
添加自定义域
1 |
注意:添加的域名要和你代码route里的对应,可以适当改下前缀,这样不容易被别人爬到 |
先改github项目里的index.js里面的域名,然后提交,提交后会自动更新cf里面的worker.js里面的内容(提交到github会自动构建部署到cloudflare workers)
然后在设置里添加解析:
验证:解析成功后访问域名,看是否会跳到对应的官方地址
1 2 3 4 5 6 7 8 |
例如: "docker.wcd.com": "https://registry-1.docker.io", "quay.wcd.com": "https://quay.io", "gcr.wcd.com": "https://gcr.io", 访问docker.wcd.com 就是访问 https://registry-1.docker.io 访问quay.wcd.com 就是访问 https://quay.io 以此类推 |
最终使用:
docker:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
"registry-mirrors": ["https://cccc.boown.com"], 最终使用 { "registry-mirrors": ["https://cccc.boown.com"], "dns" : [ "114.114.114.114", "8.8.8.8" ] } docker info 查看地址: |
1 |
docker pull nginx |
Container 参考:传送门
代理配置(待验证)
1 2 3 4 5 6 7 8 9 10 11 |
cf 优选ip https://github.com/XIU2/CloudflareSpeedTest 将162.159.136.57添加到本地hosts里,自己根据上面cf优选找IP,不一定我这个IP适合大家,挑一个延时最小的就行了。 docker 用法:官方的镜像就是我们pull的时候不用添加任何多余的层的镜像如下面的nginx需要添加library 例子1: 原:docker pull nginx 现:docker pull docker.xxx.com/nginx 例子2: 原:docker pull osixia/keepalived 现:docker pull docker.xxx.com/osixia/keepalived ${workername}.${username}.workers.dev 返回的routes json |
- 本文固定链接: https://www.yoyoask.com/?p=11640
- 转载请注明: shooter 于 SHOOTER 发表