Cloudflare Workers 部署专属于自己的短链接服务Sink

仅需要一个托管在Cloudflare的域名,和一个github账户,就可以使用Cloudflare Workers 部署专属于自己的短链接服务Sink,如果你的域名比较短,那完全可以做成常用网站的快捷网址了。

需要

1、托管在Cloudflare的短域名。https://dash.cloudflare.com/
2、github账户。

3、Sink项目地址:ccbikai/Sink: ⚡ A Simple / Speedy / Secure Link Shortener with Analytics, 100% run on Cloudflare. (github.com)

部署过程

1、进入项目主页,将项目fork至你自己的github账户。(因为一会儿Cloudflare部署的时候只能连接到自己的账户)ccbikai/Sink: ⚡ A Simple / Speedy / Secure Link Shortener with Analytics, 100% run on Cloudflare. (github.com)

2、提前准备Cloudflare的关键信息
1、账户ID(账户主页-网站-域名主页-右下角账户id)
2、账户API密钥,进入API 令牌 | Cloudflare。创建一个API令牌,权限为:账户-账户分析-读取,账户资源包括你的账户就行。
3、Cloudflare进入账户主页,点击【Workers 和 Pages】-【创建】-【Pages】-【连接到git】-【连接到你的github,并选择Sink存储库】-【开始设置】-【框架预设选Nuxt.js】-【环境变量添加变量】

4、此处【环境变量】先添加3个
NUXT_SITE_TOKEN                值为至少8位的密码,部署好后控制台的密码
NUXT_CF_ACCOUNT_ID        值为步骤2中准备的账户ID
NUXT_CF_API_TOKEN            值为步骤2中准备的账户API密钥
5、点击【保存并部署】
6、【Workers 和 Pages】-【KV】-【创建命名空间】,记住你创建的空间,这个相当于一个简单的数据库。
7、部署好后,进入这个【Pages】找到【设置】,【环境变量】这块已经有了你在步骤四中加入的环境变量了,此处可以再添加一个环境变量位NUXT_HOME_URL,值为你想绑定的域名跳转的网址,这一步此时可以不加,等到一切都部署好验证后再添加重新部署。
在【设置】中点击【函数】
【KV 命名空间绑定】,变量名称为KV,值为你刚才创建的命名空间
【Workers AI 绑定】-【添加绑定】-【变量名称为AI】-【保存】
【分析引擎绑定】-【变量名称为ANALYTICS】-【数据集为你的kv命名空间】

8、回到【部署】-【重试部署】
9、【自定义域】-【设置自定义域】
10、尝试登陆你的域名,如果一切正常,可凭自己喜好看要不要设置【NUXT_HOME_URL】的环境变量,如果设置了,再次重新部署即可。

后记

如果你fork的仓库有了更新,那么Cloudflare会自动重新部署,这一步不需要人为干预,但是github自己不会去同步上游的代码,解决这个问题,可以给github安装一个app。
访问地址:https://github.com/apps/pull
安装这个app,设置为只同步Sink这个仓库,这样上游代码更新,你的仓库会自动拉取,Cloudflare检测到你的仓库代码更新后会自动重新部署。

评论

此博客中的热门博文

搭梯子:V2RAY配置WebSocket + TLS + Web

Oracle Cloud甲骨文免费VPS 梯子防火墙设置

在vps上搭建Zerotier的Moon节点