配合之前的Github Actions入门实操和Hyperf项目使用Supervisor部署两篇文章,填一下自动部署的坑。
因为是自己项目的部署推送,非公司项目所以一切以简单快速方便为主。
如果你的服务器上还没生成过SSH公钥则通过以下命令生成
一路回车即可,生成完毕后则在执行命令的当前用户下的目录查看
.ssh
目录里面的文件:
id_rsa是私钥文件谨慎传播,id_rsa.pub是公钥文件
接下来执行命令,复制一份公钥到这个文件:
并且修改一下文件权限:
接下来还是在.ssh目录下执行
cat id_rsa
获得私钥内容,结构大概如下:复制完整的内容,将在配置上会使用上;接下来我们去Github的项目地址去配置密钥文件:

进入到该页面后,点击右边的New repository secret创建密钥,分别创建下面几个密钥

- SERVER_HOST:为服务器地址
- SERVER_KEY:就是刚才我们复制的私钥
- SERVER_USERNAME:是创建私钥的用户名
- SERVER_WORKDIR:是项目的路径
都创建完毕后,我们则开始写流水线作业了。
因为Hyperf原先就有一个Build的作业用于判断程序是否能正常运行,那么我们在这个文件接下来的位置继续写这个作业:
文件修改好后推送上去,就可以看到流水线结果了:

那么之后修改完毕后就可以直接推送到master就会自动到服务器上更新代码,不用再手动部署了。
那么另外一个Nuxt的项目,只要修改后面的脚本就可以,Nuxt的项目完整工作流: