博客重构与自动化部署实战记录
最近对我的个人博客进行了全面的重构。由于旧项目还停留在 2018 年的状态,为了让它更符合现代开发习惯,我将其从本地手动维护升级到了基于 GitHub Actions 的自动化部署体系。
以下是本次重构的关键流程记录。
1. 核心架构升级
2. 功能重构与增强
导航与结构
- 重新配置了菜单系统,启用了
首页、关于、标签、分类和归档。 - 手动补全了
tags与categories的页面索引文件,确保导航不失效。
本地搜索 (Local Search)
- 引入了
hexo-generator-searchdb插件。 - 在主题配置中开启了实时本地搜索功能,现在可以通过关键词快速检索历史文章。
3. 自动化部署 (CI/CD) 流程
这是本次重构最核心的部分。我利用 GitHub Actions 实现了“提交即发布”的流程。
部署脚本配置
在 .github/workflows/deploy.yml 中定义了以下步骤:
- 环境准备: 使用 Node.js 20 和 pnpm 环境。
- 构建项目: 执行
pnpm run build生成静态文件。 - 自动传输: 通过
appleboy/scp-action插件,利用 SSH Key 将生成的public/目录内容同步到生产服务器。
安全管理 (Secrets)
为了保护敏感信息,服务器的登录凭证(IP、用户名、私钥、目标路径)全部托管在 GitHub 仓库的 Secrets 中,避免了明文泄露的风险。
4. 结语
通过这次重构,博客不再只是一个本地的文件夹,而是一个拥有自动化流转能力的现代化项目。
如果你也想访问我的新版博客,可以通过以下地址:
blog.mineclaw.top
访问提示: 确保服务器已开启 80 (HTTP) 和 443 (HTTPS) 端口。