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能访问的钩子文件

<?php

error_reporting(1);
//需要自动部署的项目目录
$dir =  '/home/wwwroot/xhb_admin';

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

7,阿里云code添加webhook

image.png

8.备注(修改用户组)

chown -R www:www test
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,268评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,589评论 25 709
  • 我说我啊 桀骜轻狂,我也 优柔寡合,并且 自负自卑 可是,我不能成为我这样的人啊 可是你, 长在荒芜,你也 长在城...
    临易阅读 199评论 0 0
  • 雾雨雾遮, 寥寥几人的城市 笼纱散作满城花, 她就在前方啊 前方啊 我拼命的追逐那梦一般的影子, 近在咫尺, 这次...
    兔兔草莓阅读 188评论 0 0
  • 今天看了前任3,里面似乎有很多自己的影子!例如拿走逼迫对方挽留,又例如无数遍信息编辑好又删掉,又例如想通了放下面子...
    何昕於阅读 355评论 0 0