为云服务器添加GitHub Actions
要在 GitHub Actions 中实现将一个 Hexo 项目在 push
到 main
分支时,自动执行 hexo generate
,并将生成的文件同步到腾讯云轻量应用服务器的 FTP 文件夹,你可以按照以下步骤配置 GitHub Actions。
1. 准备工作
- 确保你的 Hexo 项目已经推送到 GitHub 仓库,并且可以在本地运行
hexo generate
。 - 确保你有腾讯云轻量云服务的 FTP 账号、密码、主机地址和目标文件夹。
2. 配置 GitHub Actions Workflow
在你的 Hexo 项目中,创建一个 GitHub Actions 的工作流文件。路径为 .github/workflows/deploy.yml
,并使用以下内容:
1 | name: Deploy to Tencent Cloud FTP |
3. 设置 GitHub Secrets
为了保护你的 FTP 连接信息,使用 GitHub 的 Secrets
功能来存储 FTP 主机地址、用户名和密码。你可以按照以下步骤进行设置:
打开你的 GitHub 仓库,点击 Settings。
在左侧菜单中,选择 Secrets and variables -> Actions。
点击 New repository secret,添加以下 Secrets:
FTP_HOST
:你的腾讯云轻量云服务的 FTP 服务器地址。FTP_USERNAME
:你的 FTP 用户名。FTP_PASSWORD
:你的 FTP 密码。
保存这些 Secrets。
4. 解释各步骤
Checkout repository
: 使用actions/checkout
将当前的仓库代码拉取到 GitHub Actions 运行器上。Set up Node.js
: 安装 Node.js 环境,以便可以运行npm
和hexo
相关命令。Install dependencies
: 安装项目的依赖和hexo-cli
。Generate Hexo static files
: 执行hexo generate
命令,生成静态文件到public
文件夹。Deploy to Tencent Cloud FTP
: 使用ftp-action
上传生成的静态文件(public
文件夹)到腾讯云轻量应用服务器上的 FTP 文件夹。
5. 推送到 main
分支进行测试
每当你将代码推送到 main
分支时,这个 workflow 将自动执行,生成 Hexo 静态文件并通过 FTP 部署到腾讯云轻量云服务器。
注意事项
- FTP 安全:FTP 传输可能不是最安全的方式,建议使用 SFTP 进行更安全的传输。如果你的轻量云服务支持 SFTP,可以考虑使用 SFTP 而不是 FTP。
- Hexo 生成目录:确保
hexo generate
生成的静态文件存放在public
文件夹中,如果有自定义的生成目录,记得修改local-dir
为相应的路径。
这套流程可以帮助你自动化部署 Hexo 静态站点到腾讯云轻量应用服务器,节省手动操作的时间。
为云服务器添加GitHub Actions
https://monster1935.cn/blog/2024/09/08/为云服务器添加GitHub-Actions/