我想要将代码推送到服务器仓库,然后post-update钩子会将最新的代码拉取到部署文件夹,并重新启动守护进程。 但是git用户无法访问部署文件夹,也无法重新启动守护进程。 我该如何像Heroku一样进行git推送部署呢?
您可以使用与Heroku上推送相似的机制:基于SSH的操作。在服务器端,您的git用户(即运行post-update钩子的git用户)将通过rsh调用部署脚本,这意味着git用户帐户具有:- 在服务器用户(即能够访问部署文件夹并拥有守护进程的用户)的$HOME/.ssh/authorized_keys中发布的公钥 - 私钥(在他的$HOME/.ssh中)