前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Gitlab+Jenkins实现自动部署

Gitlab+Jenkins实现自动部署

作者头像
拓荒者
发布2019-09-24 11:53:36
1.8K0
发布2019-09-24 11:53:36
举报
文章被收录于专栏:运维经验分享运维经验分享

Gitlab+Jenkins实现自动部署

系统环境:

  • Gitlab主机
    • IP:192.168.1.2
  • Jenkins主机
    • IP:192.168.1.3

一、为何要做自动部署

代码语言:javascript
复制
 #为什么要做自动部署,因为懒啊!!!
#部署Tomcat的在这里:https://blog.51cto.com/bigboss/2155423

二、配置Gitlab

代码语言:javascript
复制
 #首先,你得有一个代码仓库,赶紧到gitlab上创建一个,然后创建个分支并创建一个文件。
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
代码语言:javascript
复制
 #其次,你得配置一个ssh公钥到gitlab上,这样才能模拟开发上传代码到gitlab。
#至于ssh公钥私钥怎么生成,自己百度去。
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
代码语言:javascript
复制
#克隆代码仓库,然后测试是否能够上传代码到gitlab

git clone git@192.168.1.2:root/test.git
cd test/
echo 11111 > 1.txt
git add .
git commit -m "add 1.txt"
git push
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署

三、配置Jenkins

代码语言:javascript
复制
#打开jenkins页面
#添加插件:系统管理 - 插件管理 
#需要添加的插件:Gitlab Hook、Build Authorization Token Root、Publish Over SSH、Gitlab Authentication、Gitlab、Git Parameter
 #添加完插件重启jenkins,开始添加要部署代码的主机,注意一定是要能够ssh登陆的用户。
#添加主机:系统管理 - 系统设置 找到Publish over SSH
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
代码语言:javascript
复制
 #添加完主机之后,新建一个项目,开始配置构建操作
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
代码语言:javascript
复制
 #配置gitlab,当有代码提交时,触发jenkins的部署操作
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署

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

代码语言:javascript
复制
#再次克隆仓库

git clone git@192.168.1.2:root/test.git
cd test/
echo '测试Jenkins' > index.html
git add .
git commit -m 'add index.html'
git push

#提交之后去jenkins页面看看
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+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+Jenkins实现自动部署
  • 解决方法: #这是因为新版的gitlab为了安全默认禁止了本地局域网地址调用web hook #我们在设置里允许就行,具体步骤如下:
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署
Gitlab+Jenkins实现自动部署

©著作权归作者所有:来自51CTO博客作者三和梁朝伟的原创作品,如需转载,请注明出处,否则将追究法律责任

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Gitlab+Jenkins实现自动部署
    • 系统环境:
      • 一、为何要做自动部署
      • 二、配置Gitlab
      • 三、配置Jenkins
      • 四、测试提交代码是否会部署到远程主机
      • 小坑:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档