Gitlab+Jenkins用钩子实现自动部署

源博客链接:https://blog.51cto.com/bigboss/2129477?utm_source=tuicool

 

 

系统环境:

  • Gitlab主机

IP:192.168.1.2 用ssh密钥连通两台主机ip1.2和ip1.3。

jenkins主机
IP:192.168.1.3 用ssh密钥连通两台主机ip1.3和ip1.4。


一、为何要做自动部署


 
 
  1. # 为什么要做自动部署,因为懒啊!!!
  2. # 部署Tomcat的在这里:http://blog.51cto.com/bigboss/2155423

二、配置Gitlab


 
 
  1. # 首先,你得有一个代码仓库,赶紧到gitlab上创建一个,然后创建个分支并创建一个文件。

Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署


 
 
  1. # 其次,你得配置一个ssh公钥到gitlab上,这样才能模拟开发上传代码到gitlab。
  2. # 至于ssh公钥私钥怎么生成,自己百度去。

Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署


 
 
  1. #克隆代码仓库,然后测试是否能够上传代码到gitlab
  2. git clone git@192.168.1.2:root/test.git
  3. cd test/
  4. echo 11111 > 1.txt
  5. git add .
  6. git commit -m "add 1.txt"
  7. git push

Gitlab+Jenkins实现自动部署


三、配置Jenkins


 
 
  1. # 打开jenkins页面
  2. # 添加插件:系统管理 - 插件管理
  3. # 需要添加的插件:Gitlab Hook、Build Authorization Token Root、Publish Over SSH、Gitlab Authentication、Gitlab、Git Parameter
  4. # 添加完插件重启jenkins,开始添加要部署代码的主机,注意一定是要能够ssh登陆的用户。
  5. # 添加主机:系统管理 - 系统设置 找到Publish over SSH

Gitlab+Jenkins实现自动部署


 
 
  1. # 添加完主机之后,新建一个项目,开始配置构建操作

Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署


 
 
  1. # 配置gitlab,当有代码提交时,触发jenkins的部署操作

Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署


四、测试提交代码是否会部署到远程主机


 
 
  1. #再次克隆仓库
  2. git clone git@192.168.1.2:root/test.git
  3. cd test/
  4. echo '测试Jenkins' > index.html
  5. git add .
  6. git commit -m 'add index.html'
  7. git push
  8. #提交之后去jenkins页面看看

Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署


小坑:

  • 错误提示:

#很多朋友使用最新版本的gitlab做自动部署时,在增加web钩子那一步,
#点击test push events时会报错:Url is blocked: Requests to the local network are not allowed
Gitlab+Jenkins实现自动部署

解决方法:
#这是因为新版的gitlab为了安全默认禁止了本地局域网地址调用web hook
#我们在设置里允许就行,具体步骤如下:
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值