GitHub Actions 自动部署:配置 GitHub 仓库指定文件夹到 Ubuntu 服务器
原文地址:https://itxiaozhang.com//github-actions-sync-specific-folder-to-ubuntu-server-complete-guide/
需求分析
源:
- GitHub 仓库:[你的仓库地址]
- 需同步的文件夹:public/
目标:
- 服务器:[服务器IP]
- SSH 端口:[SSH端口]
- 用户:[用户名]
- 目标路径:/var/www/html/[你的域名]
功能要求:
- 当 push 到 main 分支时自动部署
- 只同步 public 文件夹内容
- 部署前清空目标目录
- 无需构建步骤
- 无需部署后操作
工作流程
- 生成新的 public 文件夹中的文件
- 提交并推送到 GitHub
- GitHub Actions 自动触发
- Actions 通过 SSH 连接服务器
- 清空目标目录
- 同步新文件到服务器
详细教程
1. 服务器配置
1 |
|
2. GitHub 配置
添加 Repository Secrets
访问你的 GitHub 仓库的 Settings > Secrets and variables > Actions
点击 “New repository secret”
添加以下 secrets:
1
2
3
4
5SERVER_HOST: [服务器IP]
SERVER_PORT: [SSH端口]
SERVER_USERNAME: [用户名]
SERVER_SSH_KEY: [粘贴之前复制的私钥内容]
DEPLOY_PATH: /var/www/html/[你的域名]
创建 GitHub Actions 配置
- 在仓库中创建
.github/workflows/deploy.yml
:
- 在仓库中创建
1 |
|
3. 提交配置
1 |
|
4. 验证部署
- 访问 GitHub 仓库的 Actions 标签页
- 应该能看到一个新的 workflow 运行
- 检查服务器目标目录:
1 |
|
5. 故障排查
如果部署失败:
- 检查 GitHub Actions 日志
- 验证 SSH 连接:
1 |
|
- 检查目标目录权限
- 确认 Secrets 是否正确设置
▶ 可以在关于或者这篇文章找到我的联系方式。
▶ 本网站的部分内容可能来源于网络,仅供大家学习与参考,如有侵权请联系我核实删除。
▶ 我是小章,目前全职提供电脑维修和IT咨询服务。如果您有任何电脑相关的问题,都可以问我噢。
GitHub Actions 自动部署:配置 GitHub 仓库指定文件夹到 Ubuntu 服务器
https://itxiaozhang.com/github-actions-sync-specific-folder-to-ubuntu-server-complete-guide/