其实从很久以前就想要写博客,但总是断断续续的,一直都没有认真地开始。
最终,决定使用静态博客工具作为自己博客的承载体。在多种工具的比较下,最终选择了 Hugo 并部署到 Github Pages 上,并同时部署到腾讯云的 CloudBase 以供国内用户访问。
自此,2022 年 5 月 15 日,翔仔的个人博客终于部署到公网上了。
出现了变故但是,才经过大概 2 个月的时间,收到了腾讯云发送的 CloudBase 计费模式变更的消息。
简单来说,CloudBase 出了一个最低消费,像我这样的,原本从几毛钱的无感消费要升级到几十块,这个变动对于我来说还是挺大的。
思路变更此处要赶爷,爷自有去处。
突然想到,曾经自己用 299 买的云服务器一直荒废没有使用,毕竟还有好几个月的期限呢,一定要利用起来。
就决定是你了,我的博客暂时先放置在云服务器上,顺便了解一下如何部署静态博客到云服务器上。
第一版方案不可否认,现在流行的自动化部署真的是用一次就爱上了,尤其是,还有 Github Action 这样的免费资源可以薅,哈哈哈。
Github Pages 部署将 Hugo 通过 Github Action 部署到 Github Pages 非常简单,在网上也有很多教程可用,这里就简单地列举一下吧。
第一步,通常就是要建立一个私有库存储博客的源文件,再建立一个 Github Pages 库存储 Hugo 构建后的文件。
第二步,自然就是在 Hugo 博客项目下编写 workflow 文件,这里有使用到 Checkout、Hugo setup、GitHub Pages action 三种 Action 步骤,当时的配置如下:
on:
push:
branches:
- master
pull_request:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
# 切换分支
- name: Checkout
uses: actions/checkout@v3
# 安装 Hugo 程序
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: 'latest'
extended: true
# Hugo Build
- name: Build
run: hugo --minify --gc
# 部署到 Github Pages 上
- name: Deploy Github Pages
uses: peaceiris/actions-gh-pages@v3
if: ${{ github.ref == 'refs/heads/master' }}
with:
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
external_repository: fatedeity/fatedeity.github.io
publish_branch: master
cname: fatedeity.cn
在这一步,需要配置一个 Actions secrets 以解决安全性问题,可以通过 GitHub Pages action 了解更多。
经过上述两个配置步骤,基本上是已经完成了,之后 Hugo 博客文件再 push 到 Github 时就会自动触发部署,期间基本上能在 20s 左右完成。
CloudBase 部署使用 Github Action 部署 Github Pages 非常简单,毕竟也算是同出一家,基本上不会出现什么问题。
因为想要通过部署到 CloudBase 以加速国内 IP 访问博客的速度,也不得不研究一下怎么通过 Github Action 部署到 CloudBase 上。
仔细查找了一下,基本上就两种方案:通过 CloudBase CLI 使用命令行部署;通过官方提供的 Tencent CloudBase Github Action 工具部署。
最终,决定使用 Action 工具,相信与 Github Action 更配(实际操作起来并没有