Github 为开源项目供应了用于静态页面展示的 Pages 做事,很多开拓者都在上面托管了自己的静态网站和博客,不少开源项目的案例和文档页面也采取了这种办法。不过由于 Pages 的 CDN 节点大部分在国外,在海内的访问速率不是很空想,不少开拓者希望能提升网站在海内的访问速率和稳定性,本日会先容如何合营 Github Action 的持续集成做事和 云开拓 Github Action 扩展,自动支配到访问速率更快的云开拓静态托管做事。
云开拓静态托管是云开拓供应的一种静态网站托管能力,静态资源(HTML、CSS、JavaScript、字体等)的分发由腾讯云工具存储 COS 和拥有多个边缘网点的腾讯云 CDN 供应支持。
云开拓静态托管先容云开拓静态托管是云开拓供应的静态网站托管的能力,静态资源(HTML、CSS、JavaScript、字体等)的分发由腾讯云工具存储 COS 和拥有多个边缘网点的腾讯云 CDN 供应支持。可以通过腾讯云掌握台、命令行工具以及下面会提到的云开拓 Github Action 进行管理支配。云开拓供应了免费的二级域名(未绑定自定义域名时下行速率有限定),同时支持免费绑定开拓者自己的自定义域名。
首个环境可享受 1GB 容量和每月 5GB 流量的免费额度,对付访问量不是很大的个人博客该当足够了。如果流量大也没紧要,计费是按照详细利用收费的按量付费办法,详细信息可以查看计费价格文档 https://cloud.tencent.com/product/wh/pricing
云开拓静态托管支配的网站,还可以利用云开拓的供应的一站式 Serverless 后端能力,例如云函数、云数据库、云存储、身份做事等。比如可以在静态托管的个人博客上面利用云函数和云数据库实现评论、留言板功能等,或者可以把博客的内容管理从原来的静态文件支配变为动态内容管理等,拓展的用法非常的多,开拓者可以连续深入探索。
如何通过 Github Action 一键支配到云开拓下面演示如何将 Github 静态页面自动支配到云开拓的静态托管,来得到稳定的访问速率和更多的扩展能力。
例如开拓者的个人博客 Github 项目构造如下:
|-- src
|-- build
|-- README.md
希望将项眼前 build 目录天生的静态网站代码支配到云开拓这边开通的静态网站托管的根目录下。
编写 Github Action 文件首先在项目目录配置如下的 Github Action 文件 .github/workflows/main.yml,如果已经配置过 Github Action 就不须要重新创建了,然后参考下面的配置填写。
on: [push] # push 代码时触发
jobs:
deploy:
runs-on: ubuntu-latest
name: Tencent Cloudbase Github Action Example
steps:
- name: Checkout
uses: actions/checkout@v2
# 利用云开拓 Github Action 支配
- name: Deploy static to Tencent CloudBase
id: deployStatic
uses: TencentCloudBase/cloudbase-action@v1
with:
# 云开拓的访问密钥 secretId 和 secretKey
secretId: ${{ secrets.SECRET_ID }}
secretKey: ${{ secrets.SECRET_KEY }}
# 云开拓的环境id
envId: ${{ secrets.ENV_ID }}
# Github 项目静态文件的路径
staticSrcPath: build
可以看到配置中紧张用到了 云开拓 Github Action 扩展 TencentCloudBase/cloudbase-action@v1 来支配静态文件。
把稳配置文件中参数部分的 secretId、secretKey 、envId属于敏感信息,须要放在项目的 secret 存储中,这里不用填写真实的值,只须要按照上面实例填写变量即可。
staticSrcPath 这里填写了静态网站构建产生的目录 build,如果想把静态资源支配到云真个某个子目录而不是根目录,可以再配置一个参数 staticDestPath 。
配置云开拓访问信息我们还须要在项目的 Secrets 中配置 SECRET_ID、SECRET_KEY、ENV_ID 这几个私密信息,下面是详细的配置办法。
首先要开通云开拓静态网站,可以参考开通指南:https://docs.cloudbase.net/hosting/,开通环境后在云开拓环境列表 页面即可得到环境ID ENV_ID ,然后在腾讯云 访问管理 页面可以配置一对 API 访问密钥,也便是SECRET_ID、SECRET_KEY。
然后在自己的 Github 项目内的 Setting/Secrets 里设置 SECRET_ID, SECRET_KEY, ENV_ID 信息即可。
配置完之后就可以提交代码体验自动支配了,每次 git push Actions 都会自动运行,将项目的静态资源支配到自己的云开拓静态托管环境,支配成功之后即可通过云开拓供应的二级域名访问来自己的网站。
配置自定义域名云开拓供应的免费的二级域名下行速率有所限定,开拓者最好绑定一个自己的域名,绑定域名是免费的,还可以在腾讯云配置一个免费的 SSL 证书,来通过 HTTPS 访问自己的网站。
自定义域名的方法可以参考这篇文档 https://docs.cloudbase.net/hosting/custom-domain.html
配置完成后,测试下支配在云开拓静态托管的网站的访问速率,根据测速数据可以看到各地的访问速率都非常快。
更多扩展用法云开拓 Tencent CloudBase Github Action 这个扩展会 Github 项目自动支配到云开拓环境,目前支持静态托管功能,后续会支持其他资源的支配,比如可以把用 Node JS 、 Java、PHP 等措辞开拓的做事端项目一键支配到云开拓,来得到 Serverless 化的动态网站做事。或者自动化支配带有数据库、前端、后真个全栈运用。
Tencent CloudBase Github Action 扩展市园地址:
https://github.com/marketplace/actions/tencent-cloudbase-github-action
Tencent CloudBase Github Action 代码开源地址:
https://github.com/TencentCloudBase/cloudbase-action
欢迎大家多多体验、Star 支持或者提交 Issue / Pull request 来参与贡献。
开拓者扶持云开拓还推出了【9.9元静态网站托管包年资助操持】。只要你是技能博客/技能站点,迁移至云开拓静态网站托管做事后,即可申请该资助操持。 申请办法链接: https://url.cn/5nFAtxq 静态网站托管产品先容:https://cloud.tencent.com/product/wh