为云服务器添加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://blog.monster1935.cn/2024/09/08/为云服务器添加GitHub-Actions/
