Hugo自动化部署流程

hugo自动化部署流程
一、问题描述
当你配置好hugo可以在本地看到自己的博客网站了。
本教程实现后续两个功能。
- 如何自动化部署到线上,最终实现,在本地写完一个博客,直接推送到远程git仓库,线上网站就会自动更新。
- 一个完整的博客编写生态,就算换了设备也可以通过重新配置一遍实现博客更新。
前提要求:
- github创建好了对应的hugo的git仓库
- 本地hugo可以跑通
使用工具:
- cloudfare注册部署
- 阿里云存储
- typora+picago编写markdown文档
二、问题分析
hugo部署的主流方法是github page实现把博客部署到github中申请的域名,github action实现脚本自动化部署流程。
我使用过这个方法,有两个缺点。
一个是操作复杂,对应的流程和界面需要找半天,需要修改脚本,看懂脚本,而且容易遇到各种bug。
二是访问速度太慢,分发的gitpage.io域名访问速度过慢,可能和服务器在国外有关。
所以最后我采用了cloudfare申请域名自动化部署。
优点:
- Cloudflare Pages的 CI/CD 非常丝滑稳定,基本上本地push到GitHub仓库,几秒钟后就可以进行部署,两分钟后更改就可以上线。每个月免费构建额度是500次,但是我觉得99%的人都够用了吧
- Cloudflare Pages有全球的服务器部署,在国内国外的访问速度都不错,可以接受。
- Cloudflare Pages可以从Github私有仓库拉取博客源文件,而且不需要配置麻烦的公钥和Token。更别说复杂的GitHub Action了,构建博客的过程相当丝滑。
- 可以绑定多个自定义域名,也会直接送你一个
xxxx.pages.dev的三级域名(类似于 xxxx.github.io,不过这个可以定制不是吗
三、解决方法
3.1自动化部署
这里已经默认好了你已经创建了github私人仓库。
打开浏览器,访问 Cloudflare 并登录注册。

点击左边的Worker和Pages,然后点击右上角创建,我这里已经创建好了一个gorantan-blog。

然后点击pages,点击连接到git,选择自己的账号和仓库。

进入构建和部署界面,项目名称一般和你的仓库名一致,可以自己改,cloudfare会送你一个xxx.pages.dev的三级域名。然后框架选择hugo,自动生成构建命令hugo,也可以修改成hugo sever。默认输出目录public,public是hugo项目跑起来之后的渲染输出界面。点击构建。

点击 Save and Deploy,Cloudflare Pages会自动开始部署。
之后就能在Workers 和 Pages页面看到自己部署好的页面啦,点击访问就可以查看。
3.2 markdown编写环境
参考链接:Typora+PicGo+阿里云OSS搭建博客图床(超详细)-CSDN博客
写的非常详细了。
四、完结撒花
通过以上的配置,你就可以实现在本地的typora写完markdown文档之后,直接提交到远程git仓库,然后cloudfare自动帮你更新部署,你的网站就会出现新内容啦。
微信