当前位置:首页 > 开发 > 操作系统 > 正文

自己实践了github的webhooks, linux上面的权限需要注意

发表于: 2015-01-08   作者:dcj3sjt126com   来源:转载   浏览:
摘要: 环境, 阿里云服务器   1. 本地创建项目, push到github服务器上面   2. 生成www用户的密钥 sudo -u www ssh-keygen -t rsa -C "xxx@xx.com"     3. 将密钥添加到github帐号的SSH_KEYS里面   3. 用www用户执行克隆, 源使

环境, 阿里云服务器

 

1. 本地创建项目, push到github服务器上面

 

2. 生成www用户的密钥

sudo -u www ssh-keygen -t rsa -C "xxx@xx.com"

 

 

3. 将密钥添加到github帐号的SSH_KEYS里面

 

3. 用www用户执行克隆, 源使用ssh的克隆方式, 不要用https

sudo -u www git clone git@github.com:xxx/xxx.git

 

 

4. 创建更新的php脚本,放到网站的根目录, 外网可以正常访问到这个脚本即可

cat update_hook.php

<?php
$www_folder = "/alidata/www/default/movie";

//在这里获取到了用户提交的内容, 以及提交者等等, 可以记录到数据库中供以后使用
$raw_json = file_get_contents('php://input');
print_r(json_decode($raw_json, true));

echo shell_exec(" cd $www_folder ; git pull 2>&1");

 

 

5. 将脚本地址填写到项目的webhooks

http://x.x.x.x/update_hook.php

 

 

提示: 

注意不要在服务器上用root用户git pull, 这样一些文件的权限会变为root, 就混乱了, 下次 www用户push后就无法通过webhook部署了

sudo -u www git push

 

 

服务器上面配置全局的用户和邮箱

git config --global user.name “xxx”
git config --global user.email “xxx@xxx.com"

 

 

将项目根目录权限设置为www用户

chown -R www:www /alidata/www/default/movie

 

 

 

自己实践了github的webhooks, linux上面的权限需要注意

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
老早就想写这个话题了,今天正好有机会研究了一下 git 的自动化部署。最终做到的效果就是,每当有新
自己装修房子啊,我个人十分佩服,因为要付出的精力实在太大了,对于我佩服的人,我很想和他做朋友
有好奇心的朋友们一定都想看一看很多开源项目的源码,那么github就不用说啦,太多的开源项目都把源
有好奇心的朋友们一定都想看一看很多开源项目的源码,那么github就不用说啦,太多的开源项目都把源
一.本地仓库的创建和提交 1.下载并安装Git http://msysgit.github.io/,安装完成后在本地电脑创建一
一.本地仓库的创建和提交 1.下载并安装Git http://msysgit.github.io/,安装完成后在本地电脑创建一
【01】下载地址: http://windows.github.com/ 【02】注册账户,登录。 *****注册GitHub后你就会有0
1,可以在程序中间定义变量,同事说是因为他使用的是c++编译器,不过这个的确是很方便。 2,关于cha
下载安装jekyll apt-get install ruby gem install jekyll 安装错误: ERROR: Could not find a val
方法一: 并行安装Linux(不在Android操作系统之上运行,需要设备已经unlocked并且rooted) 我还没玩
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号