利用WebHook实现PHP自动部署Git代码】的更多相关文章

平时项目代码都托管在Coding,然后每次提交了代码之后都要SSH到服务器上去git pull一次,很是繁琐,在看了OverTrue的<使用PHP脚本远程部署git项目>后就尝试在自己服务器上搞一下自动化部署,下面把部署步骤列出来算是一个分享与备忘. 首先在Coding上创建一个项目,然后在本地clone一份. 在服务器上(以Nginx环境为例,Apache请看OverTrue的教程) 1. 生成公钥 公钥有两个:1. git用户公钥,2. 部署公钥: git用户公钥   1 2 3 ssh-…
最近在使用Coding的代码托管,顺便设置了WebHook自动部署,过程还是挺艰辛的,主要还是没搞懂Linux的权限控制,不过好在弄好了,分享一下获益最深的一篇文章,供大家参考,原文是英文版的,我的英语也不行,勉强能看懂,大家凑合着看吧 原文链接:http://jondavidjohn.com/git-pull-from-a-php-script-not-so-simple/ I intended to set up a repository (hosted on BitBucket) to i…
搭建Jenkins wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.reporpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.keyyum install -y jenkins systemctl enable jenkins.service #设置jenkins服务为自启动服务systemctl start jenkin…
Windows 2003]利用域&&组策略自动部署软件 转自 http://hi.baidu.com/qu6zhi/item/4c0fa100dc768613cc34ead0 ===================================================================================可以利用 Active Directory 的组策略功能来为公司的计算机部署软件.在规模比较大的网络环境里面,为了降低我们系统管理逐台给每个客户端去安装…
一.概述 在上一篇文章,链接如下: https://www.cnblogs.com/xiao987334176/p/11434849.html 已经实现了 Jenkins+harbor+gitlab+k8s 自动部署功能,但是最终发布的时候,是手动的. 现在需要实现每次GitLab上有提交事件的时候,都能触发Jenkins执行相应的操作,比如:构建并自动部署. 二.Jenkins配置 安装Gitlab Hook插件 登录后台,点击 Manage Jenkins --> Manage Plugin…
gitlab有个功能叫webhook,比较适合前端代码的自动部署.其中的逻辑在  http://172.30.83.152:30080/help/user/project/integrations/webhooks  这里有详细写到.简单说就是,gitlab会监控master(或者其他分支)代码提交情况, 一旦有提交,就会发送一个请求到我设置的回调地址:我接收到请求了,就直接pull最新的代码.大概了解了,可以看我下面的操作步骤. 一.设置回调地址 二.编写接收回调的接口 三.配置到服务器上 1…
之前已经用Git实现了自己博客的提交自动部署,并自动提交到GitHub和coding以备不时之需.平时项目代码都托管在Coding或者GitHub上,也已经用上了coding提供的webhook功能,偶尔个别自己玩玩的项目提交了代码之后再SSH到服务器上去 git pull 一次,刚好一起做成了自动部署,方法记录起来备忘. 实现步骤 在服务器上 以Nginx环境为例,Apache请看OverTrue的教程 生成公钥 公钥有两个:1. git用户公钥,2. 部署公钥: git用户公钥 123 ss…
使用WebHook自动部署项目今天在laravist.com看到了这个 Webhook 自动部署Git项目 这个教学视频,以前自己也想做这样做一个利用Git WebHook的自动化部署,但总是不成功,今天看到视频就想着再次尝试一下,虽然有视频参考但还是遇到了一些坑,在这里我写下自己的部署过程.注:1.我是在de style="box-sizing: border-box; font-family: Menlo, Monaco, Consolas, 'Courier New', monospace…
https://segmentfault.com/a/1190000007892407 安装nodejs 安装nodejs建议直接下载二进制包,把官网上的64位二进制版本下载地址复制下来,执行 wget https://nodejs.org/dist/v6.9.2/node-v6.9.2-linux-x64.tar.xz xz格式的文件按照以下命令解压: xz -d xxx.tar.xz 将 xxx.tar.xz解压成 xxx.tar tar xvf xxx.tar来解包 解压之后把目录拷贝到/…
Visual Studio 2010 部署Git代码管理环境. 第一:首先做Git的安装和环境部署 1.下载并安装Git软件,在windows环境下的Git叫做“msysGit”,官网地址为https://git-for-windows.github.io(但是下载会有点慢),我这里使用了Git-2.8.1-64-bit版本. 2.安装好之后,在开始-->程序里面就可以看见Git相关内容, 接下来进行设置:点击“Git Bash”,设定自己的邮箱和用户名为全局变量,这将是以后检出.上传代码的账户…
利用github的webhook进行自动部署 github提供了webhook功能,大概意思就是,当你提交了代码,git检测到你进行了push,可以调起你一个你知道的url. 这个功能有什么用了?比如个人博客写文章的时候,提交了github应该马上把服务器的版本也更新一下,这时候webhook就可以很方便的处理这件事情了. 这篇文章主要讲解整套流程如何设置 设置github拉取权限 设置github的访问权限有两种方式,一种是直接将github的账号密码配置配置到服务器的全局配置文件中,一种是通…
前面基本上把整个配置过程都完整地串起来了,包括可能遇到的难点,按照那个套路应该可以配置好自动打包发布的功能.简单总结下我的学习过程,以及遇到问题是怎样解决的. 准备一个项目源码 刚开始在github和码云上搜索有没有现成的练习项目,很可惜,没有找到,所以只能自己创建一个简单的项目,当然,如果在公司有源码浏览权限的话可以直接使用公司git服务器上的项目来练习,可惜我们公司并没有给测试人员开放源码权限. 我特意下载了一个Intellij IDEA来新建java工程(呵呵,杀鸡用牛刀~~),Ant的b…
Jenkins是一个持续集成平台,它能够从git等源码管理服务器拉取代码.打包并发布到tomcat等中间件,只要配置好相关插件,就可以做到项目的自动化构建.部署,不论是对开发来说监控代码质量,还是对测试来说进行自动化部署,都有很大的帮助. 因为之前有用过jenkins,也写过2篇博客,但是现在回过头去看,其实有很多地方没写明白,知其然,不知其所以然.痛定思痛,决心好好研究下jenkins,也趁这个机会把整个流程重新梳理一遍,同时方便以后查阅. 因为平时上班,只能利用晚上时间搞,前后大概花了一周才…
做了一个简易的git 代码自动部署脚本 http://my.oschina.net/caomenglong/blog/472665 发表于2个月前(2015-06-30 21:08)   阅读(200) | 评论(1) 12人收藏此文章, 我要收藏 赞1 8月22日珠海 OSC 源创会正在报名,送机械键盘和开源无码内裤   项目是THINKPHP写的 用了 oschina git 进行版本管理. 公网服务器是CentOS.每次用FTP上传很麻烦. 所以想到了在服务器上安装一个GIT进行 pull…
1.安装 http://www.cnblogs.com/sunada2005/archive/2013/06/06/3121098.html http://www.cnblogs.com/zhcncn/p/4030078.html http://www.cnblogs.com/Neddy/archive/2011/02/28/1967548.html 先装依赖,在安装 其中的下载地址可以更改成如下: http://download.chinaunix.net/download/0004000/3…
注意:服务器:Ubuntu Server 14.04,我的项目比较小,所有操作都使用root,建议最好新建一个用户(需要有管理员权限,否则在后面使用hooks自动部署代码时会出现各种权限问题,很蛋疼的). 一.搭建GIT服务器 1. 安装GIT 1.1 安装前最好先更新apt-get,同时需要事先安装好openssh,对应的两条命令如下: apt-get update apt-get install openssh 1.2 通过apt-get安装git apt-get install git 2…
安装git服务器先安装依赖软件:yum -y install gcc zlib-devel openssl-devel perl cpio expat-devel gettext-devel openssl zlib curl autoconf tk1.下载最新的git文件:https://www.kernel.org/pub/software/scm/git/git-2.13.0.tar.gz2.tar xzf git-2.11.1.tar.gz 3.cd git-2.11.14../conf…
之前在一台vps服务器上面搭建了Git服务器,用来做代码管理,方便团队开发.但是问题也就相应的来了,使用git可以轻松的上传代码,而由于做的是web开发,每次还都得到服务器上把代码手动pull或者复制到网页所在的文件夹下,也就比较麻烦,不适合我这种懒人.git提供了hook机制,可以很容易的实现代码的自动部署. 个人原创,版权所有,转载请注明原文出处: http://www.embbnux.com/2014/09/05/git_server_let_code_auto_deploy/ 一 git…
起因: 经常本地push到gitee等线上代码仓库,然后登陆服务器在进行pull,很麻烦,想偷懒怎么办?使用git的webhook实现! 1.实现原理 1.1本地提交推送 1.2线上仓库监听push动作,也就是webhook,回调url触发服务器的pull操作 1.3服务器pull操作 2.实现步骤 2.1本地和服务器安装git(略过) 2.2码云进入项目->管理->webhook设置,(其他原理一样 git,coding) url就是你服务器上可以访问的地址, 该地址是进行pull命令的文件…
目标:服务器上搭建Laravel环境,本地使用IDE进行开发,使用Homestead做本地调试环境,代码提交后自动部署到服务器Root目录下. 下面是整个流程的示意图:  1. 准备工作,搭建LNMP环境 搭建一个Linux服务器,安装好nginx.MySQL.PHP 因为要用到Laravel 5.4,对安装的php有以下要求 PHP >= 5.6.4 OpenSSL PHP Extension PDO PHP Extension Mbstring PHP Extension Tokenizer…
Git服务搭建多见于linux环境,但windows主机也不少,目前网上文章诸多不全,且以讹传讹,不甚清楚.下面介绍windows环境下的自动部署和发布. 所需环境及资源:Java环境.Gitblit:示例服务器环境:windows server 2012 一.Java环境的安装 1)下载JRE安装包windows环境下使用GitBlit,必须安装Java环境,而Java环境可采用JRE或JDK两种方式安装,这里采用JRE的方式,其安装包相对JDK也要小不少,若已安装JDK环境可忽略. JRE安…
上一节介绍了如何用Ant插件来打war包,本节接着介绍如何把build好的war自动部署到tomcat中 1.先安装 Deploy to container Plugin插件 2. 在构建后操作中添加操作步骤 字面意思把war包放到一个容器中,可以把它理解为jenkins到war包的存放路径去拿打好的war包,然后把包放到目标容器 具体配置如下: WAR/EAR files:填写war包在jenkins工作空间中的存放路径 Context path:一般填写包名即可,就是在部署好后访问系统时的路…
jenkins之所以这么强大,离不开丰富的插件库. 要确保jenkins上安装好Git plugin.GitHub plugin.AntPlugin插件,一般在启动jenkins时默认安装的插件中就包含这些了,没有的话再另安装就可以. 接下来是重点,jenkins打包要做2件事,一是从git服务器拉取项目源代码,二是利用Ant插件进行打包.而这2个操作进行的前提是jenkins所在的宿主机已经安装了git和ant,当然还有JDK. 一: git的安装:可以去看一下<廖雪峰git教程>,写的简洁…
在 docker:(3)docker容器挂载宿主主机目录 中介绍了运行docker时的一个重要命令 -v sudo docker run -p : --name tomcat_xiao_volume -v /home/xiaochangwei/test:/usr/local/tomcat/webapps xiaochangwei/tomcat:v1 将容器内部目录和宿主主机目录进行关联,这样操作宿主主机关联目录时,就会同步关联操作了容器对应目录, 这在发布war包时尤其有用, 容器启动后就无需再…
jenkins是一个广泛用于持续构建的可视化web工具,持续构建说得更直白点,就是各种项目的"自动化"编译.打包.分发部署.jenkins可以很好的支持各种语言(比如:java, c#, PHP等)的项目构建,也完全兼容ant.maven.gradle等多种第三方构建工具,同时跟svn.git能无缝集成,也支持直接与知名源代码托管网站,比如github.bitbucket直接集成 jenkins服务器:192.168.239.134测试服务器: 192.168.239.136 1.配置…
使用hexo在github pages上弄了一个静态博客,后来觉得访问有点慢,于是放到自己vps上. 对于静态博客的部署非常简单,本来就是html,js,css等静态文件,只要nginx上配置下目录就可以正常访问了. 麻烦的是博客更新的时候,还要去vps上操作更新git pull操作,如果每次在本地commit之后,github仓库能够自动更新到vps上多好啊,于是就用到了webhook的功能.(这里静态文件的生成还是在本地,只是把生成好的静态文件push到github了,所以自动部署没有构建的…
以下内容引用自https://ayayui.gitbooks.io/tutorialspoint-maven/content/book/maven_deployment_automation.html: 注意:Maven自动构建和自动部署的区别在于,构建只是编译代码阶段,而部署是一整套代码获取到编译再到打包发布的完整流程. 提示:其实本文提到的场景可能有一些矛盾,但只是出于演示效果,主要目的是实现Maven中利用POM进行代码获取.更新.提交.编译再到部署的过程. 一.场景 在项目开发中,通常开…
前言 如果你手动部署过项目,一定会深感持续集成的必要性,因为手动部署实在又繁琐又耗时,虽然部署流程基本固定,依然容易出错. 如果你很熟悉持续集成,一定会同意这样的观点:"使用它已经成为一种标配". 什么是持续集成 Continuous Integration(CI) is a development practice that requires developers to integrate code into a shared repository several times a d…
在之前的公司,我们前端使用webpack构建项目,项目构建完成后,我们会使用ftp或linux的一些命令工具上传我们的文件到服务器上,这种方式虽然是可以,但是最近面试的时候,人家会问我前端如何部署项目,我就说我们公司目前是这样操作的,最后人家会感觉很low,最后总之总之没有面试上.因此今天来给大家介绍下使用Jenkins基于github来实现前端自动化集成打包部署前端资源文件. Jenkins基本介绍: Jenkins是一个开源软件项目,它是基于java开发的一种持续集成工具,它用于监控持续重复…
实现自动部署的关键就是利用github的webhooks,我们在github建立一个项目之后,在项目主页点击Settings,看到Webhooks点击打开可以添加一个链接,这里的意思是,github可以帮你监听一些项目发生的事件,当指定事件发生时,会向你指定的链接发一个post请求,然后你就可以知道自己的哪个项目发生了什么事情,再去做一些具体的操作,那么这时就可以利用shell脚本实现项目自动pull并且重新部署,最后实现的效果就是在本地push代码,一段时间过后,效果就展示在了网站上面. 自动…