Woodpecker CI 和 Gitea 实现 Hugo 自动部署

Woodpecker CI 和 Gitea 实现 Hugo 自动部署

💡 原文中文,约3900字,阅读约需10分钟。
📝

内容提要

今天我成功将博客从Cloudflare Pages迁移到自己的服务器,使用GitHub备份,并配置Woodpecker实现自动构建和部署。尽管过程中遇到了一些问题,但整体顺利,访问速度有待观察。

🎯

关键要点

  • 成功将博客从Cloudflare Pages迁移到自己的服务器。
  • 使用GitHub作为备份,并配置Woodpecker实现自动构建和部署。
  • 在GitHub中添加远程存储库URL以便同时推送到多个存储库。
  • 编写简单的Workflow来构建Hugo网站并清除CDN缓存。
  • 配置Nginx虚拟主机以提供静态网页服务。
  • 注意Nginx配置中未添加缓存设置,计划使用CDN自定义缓存规则。
  • 在Cloudflare创建最小权限的API Token以便进行缓存清除。
  • 在Woodpecker中添加博客存储库并设置必要的Secret。
  • 更新Woodpecker容器以支持构建静态网站输出目录。
  • 整体迁移过程顺利,访问速度有待观察。

延伸问答

如何将博客从Cloudflare Pages迁移到自己的服务器?

可以通过将GitHub存储库作为备份,并配置Woodpecker实现自动构建和部署来完成迁移。

Woodpecker在自动部署中起什么作用?

Woodpecker用于自动构建和部署Hugo网站,并清除CDN缓存。

如何配置Nginx以提供静态网页服务?

需要添加Nginx虚拟主机配置,设置监听端口和SSL证书等参数。

在GitHub中如何同时推送到多个存储库?

可以通过添加远程存储库URL来实现,使用命令`git remote set-url --add origin git@xxx.com:username/repo.git`。

迁移过程中遇到了哪些问题?

虽然遇到了一些问题,但整体迁移过程还是比较顺利的。

如何在Cloudflare创建API Token以清除缓存?

需要在Cloudflare创建一个最小权限的API Token,并设置自定义令牌的权限。

➡️

继续阅读