每次改完代码都要手动打包 ZIP、上传 cPanel、解压、跑迁移、清缓存,部署时间远超编码时间。这套方案让你只需
git push,GitHub Actions 自动完成构建、上传、迁移和健康检查。工作流会在每次推送到 main 分支时:安装 Laravel 生产依赖、构建 Vue 和 Vite 资源、打包应用、通过 SSH 连接 cPanel、上传并解压新版本、保留生产环境的 .env 和 storage 目录、运行数据库迁移和 Laravel 优化命令、重启队列 worker、检查生产站点是否正常响应。
关键步骤:在 cPanel 生成 SSH 密钥并添加为 GitHub 仓库的 Deploy Key → 在本地生成另一对密钥,公钥加入 cPanel 授权,私钥存入 GitHub Secrets → 在仓库创建 production 环境并配置 CPANEL_SSH_PRIVATE_KEY、CPANEL_SSH_HOST、CPANEL_SSH_PORT 等 Secrets 和 APP_DIR、CPANEL_USER、PHP_BIN、APP_URL 等 Variables → 在 .github/workflows/ 下创建 deploy-cpanel.yml 工作流文件。
工作流会排除 .env、storage、public/storage、public/.well-known 等目录,确保数据库凭据、用户上传、日志等不被覆盖。安全提醒:不要将敏感信息放入 VITE_ 开头的变量,不要提交 .env 文件,不要使用 chmod 777。
首次配置需要仔细处理 SSH 密钥、路径、PHP 版本和生产环境密钥。配置完成后,日常部署简化为
git add .、git commit -m "描述变更"、git push origin main,GitHub Actions 自动完成后续所有步骤。#开发者 #工具 #Laravel #Vue #GitHubActions #cPanel #PHP #DevOps #CICD #自动化部署
@DevToolboxHub