centos git webhook

1.阿里云code webhook自动部署:

场景:在阿里云code上有一个bang_admin的远程git仓库。
每次push新的文章上去后,还要登陆远程服务器去pull代码,感觉非常不方便。这里用webhook来解决这个问题。

2 创建www公钥

sudo -Hu www ssh-keygen -t rsa # 一直回车下去
sudo cat ./home/www/.ssh/id_rsa.pub # 查看生成的密钥内容,复制全部

将生成的密匙复制到阿里云code ssh公钥


image.png

3.确保shell_exec函数开启

找到php.ini的禁用函数并删除


image.png

4.确保给你的web访问目录用户文件打开权限

image.png

我需要能有/home/wwwroot/xhb_admin的权限

sudo chmod 777 /home/wwwroot/xhb_admin/ -R

5.手动测试www用户pull

cd /home/wwwroot/xhb_admin
sudo -u www git pull (chown -R jay:fefjay my #修改文件所属用户为jay,所属用户组为fefjay)

6.编写web能访问的钩子文件

&1'是让执行管道输出结果。
echo shell_exec("cd $dir && git checkout -f && git pull 2>&1"); 

7,阿里云code添加webhook

image.png

8.备注(修改用户组)

chown -R www:www test

你可能感兴趣的:(centos git webhook)