百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

jenkins+gitlab 实现自动化部署 gitlab配置jenkins webhook

lipiwang 2024-10-23 13:57 12 浏览 0 评论


目录


1、安装jdk,要记住安装路径


2、安装maven,要记住安装路径


3、安装git,要记住安装路径


4、安装gitlab


5、安装jenkins(centos7)


创建安装目录


下载通用war包


启动和关闭Jenkins


进入Jenkins后台


1、打开后台地址(jenkins默认端口8080,ip自行替换成自己外网的ip)


2、查看密码,初始化进入


4.设置管理员


5. 安装完成成功进入首页


6、配置jenkins


进入系统管理——》全局工具配置


配置jdk安装路径


配置maven安装路径


配置git


进入系统管理——》插件管理


安装Maven Integration


安装Publish Over SSH插件


进入系统管理——》系统配置


配置环境变量


配置SSH服务器地址


进入系统管理——》全局安全配置


勾选匿名用户具有可读权限,保存


linux命令关闭跨站请求伪造保护,修改jenkins的配置文件


7、新建任务


配置源码管理


配置构建环境


配置构建


配置构建后操作


8、获取API token


9、配置gitlab,当触发提交代码,则出道jenkins,进行拉取分支,打包,上传远程服务器,启动








主要流程:从git服务器检出项目 ——》maven打包 ——》上传远程服务器 ——》执行sh命令启动项目


1、安装jdk,要记住安装路径


2、安装maven,要记住安装路径


3、安装git,要记住安装路径


4、安装gitlab


5、安装jenkins(centos7)


创建安装目录


Bash
sudo mkdir -p /opt/jenkins && cd /opt/jenkins



下载通用war包


Bash
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install jenkins



启动和关闭Jenkins


sudo service jenkins start
sudo service jenkins stop



开放端口,并重启防火墙:


firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload



进入Jenkins后台


1、打开后台地址(jenkins默认端口8080,ip自行替换成自己外网的ip)


http://127.0.0.1:8080



?


2、查看密码,初始化进入


cat /var/lib/jenkins/secrets/initialAdminPassword



3.安装插件 选择第一个默认插件即可


说明:在安装插件的时候,有时候会安装很多失败的插件,这时候只能找百度解决了,我自己一步安装成功了所有插件。


?



4.设置管理员


?



5. 安装完成成功进入首页


?


6、配置jenkins


进入系统管理——》全局工具配置


?


配置jdk安装路径


?


配置maven安装路径


?


配置git


注意:通过如下命令查看git安装路径:


which git



/usr/bin/git



?


进入系统管理——》插件管理


?


安装Maven Integration


注意:是在可选插件tab栏搜索这个插件安装


?


安装Publish Over SSH插件


?


然后跟着操作提示安装然后重启jenkins ,在安装界面处,可以直接重启


进入系统管理——》系统配置



配置环境变量




配置SSH服务器地址








注意:密码配置在高级里面,打钩密码效验,输入服务器密码即可


进入系统管理——》全局安全配置


?


勾选匿名用户具有可读权限,保存


linux命令关闭跨站请求伪造保护,修改jenkins的配置文件


vim /etc/sysconfig/jenkins



?



JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true"


配置后重启jenkins。 service jenkins restart (一定要重启)


重启后进入系统管理——》全局安全配置,显示如下图,说明配置成功


?


这下就把所需要的配置都配置完啦!!!


7、新建任务


?


?


输入名字,选择第一个选项,构建自由风格的软件项目


然后进入如下页面,直接跳过General选项,进入源码管理,添加git地址


配置源码管理


?


?


ID随意。


配置构建环境


?


配置构建


注意:这里选择执行shell命令,其实就是maven打包命令



#!/bin/bash -il
#进入文件根目录
#cd "$WORKSPACE"

#项目打包
mvn clean install package '-Dmaven.test.skip=true'



注意开头要加#!/bin/bash -il,否则一直提升mvn 命令不成功。


配置构建后操作


?


上面的执行命令,是把这个jar上传到指定的服务器后,执行的命令,如启动jar服务。


命令如下:


#!/bin/bash 
netstat -anp|grep 8811|awk '{printf $7}'|cut -d/ -f1 |xargs kill -9 || true
nohup java -jar /var/data/demo-0.0.1-SNAPSHOT.jar > /var/data/log.log 2>&1 &



注意:前面需要加上#!/bin/bash ,不然执行不成功,我自己弄了很多次。


如上命令,其实就是一个先关闭进程,在重新启动jar项目。需要改8811,和/var/data/demo-0.0.1-SNAPSHOT.jar 还有/var/data/log.log。配置成自己即可。


赋值上传到指定路径权限:


chmod 777 /var/data



最后记得给8811开放端口:


sudo firewall-cmd --permanent --add-port=8811/tcp
firewall-cmd --reload



8、获取API token


点击用户名(admin)——》选择设置——》添加token ,输入用户名生成token,需要记录token,git回调需要用户token.


?


9、配置gitlab,当触发提交代码,则出道jenkins,进行拉取分支,打包,上传远程服务器,启动


?


Secret token,就是第七步获取的token。

?

相关推荐

《每日电讯报》研发数字工具,教你更有效率地报道新闻

为鼓励新闻编辑部持续创新,《每日电讯报》正在尝试有战略地研发数字工具。网站的数字媒体主任马尔科姆o科尔斯(MalcolmColes)表示,《每日电讯报》正试图去“创建一些可持续资产”,以便于让记者们...

html5学得好不好,看掌握多少标签

html5你了解了多少?如果你还是入门阶段的话,或者还是一知半解的话,那么我们专门为你们收集的html5常用的标签大全对你就很有帮助了,你需要了解了html5有哪些标签你才能够更好的。驾驭html5...

前端分享-少年了解过iframe么(我想了解少年)

iframe就像是HTML的「内嵌画布」,允许在页面中加载独立网页,如同在画布上叠加另一幅动态画卷。核心特性包括:独立上下文:每个iframe都拥有独立的DOM/CSS/JS环境(类似浏...

做SEO要知道什么是AJAX(人能看到但搜索引擎看不到的内容)

一个明显的,人能看到但搜索引擎不能看到的内容是AJAX。那么什么是AJAX呢?其实,了解过的基本上也都清楚,AJAX不是新的编程语言,而是一种使用现有标准的新方法。AJAX最大的优点是在不重新加...

介绍最前沿的人工智能创新,‘无反向传播’神经网络训练方法?

图像由GoogleImageFX生成前言:本文整理自NoProp原始论文与实践代码,并结合多个公开实现细节进行了全流程复现。对神经网络训练机制的探索仍在不断演进,如果你也在研究反向传播之...

说说我们对HTML6的期许(对html的看法)

HTML5概述HTML5是HTML语言最受欢迎的版本之一,它支持音频和视频、离线存储、移动端、和标签属性等等。还提供了article,section,header这样的标签来帮助开发者更好...

浏览器中在线预览pdf文件,pdf.mjs插件实现web预览pdf

背景:本来只是淘宝上卖卖袜子,想着扩展一下业务,准备做同名“来家居”海外袜子馆外贸项目,碰到pdf在线预览的需求,就找了pdf.js插件进行实践后把此方法记录下来,可以通过多种方法来实现,每种方法都有...

SVG 在前端的7种使用方法,你还知道哪几种?

本文简介点赞+关注+收藏=学会了技术一直在演变,在网页中使用SVG的方法也层出不穷。每个时期都有对应的最优解。所以我打算把我知道的7种SVG的使用方法列举出来,有备无患~如果你还...

HTML5常用标签大全(html5em标签)

HTML前端开发最终取决于掌握标签的多少HTML大概有七八百个标签楼主这里给大家总结了下HTML常用标签标签描述<!--...-->定义注释。<!DOCTYPE>定义文档类型...

&quot;伪君子Snoop Dogg!&quot;... WHAT?| MetroDaily 24/7

TUE.01-新作品-虽说年纪大了会有点糊涂,但是最近SnoopDogg的这波操作实在是让粉丝们有点迷,甚至有人表示没想到他是这样的"伪君子"......而这一切都源于他近日在IG上Po出的一...

史努比snoopy卡通手机壁纸屏保(史努比壁纸无水印)

...

莎夏·班克斯盼望表哥Snoop Dogg为其作出场曲

NXT女子冠军莎夏·班克斯(SashaBanks)近日接受了迈阿密先驱报采访,访谈纪要如下:关于她出众的形象:“我一向喜欢与众不同。为了能让人眼前一亮,我的装束总是非常前卫、非常抢眼,这样才能让观众...

喜欢Snoop!全球第一间「史努比博物馆」海外分馆在东京!

1950年起,由美國漫畫家CharlesM.Schulz創作的作品《Snoopy》史努比,其鮮明的可愛角色與幽默的劇情內容,至今仍成為許多大朋友與小朋友心中的最愛。為了紀念作者所設立的全球首...

Vetements 推出 Snoop Dogg 肖像「天价」T-Shirt

Vetements的CEOGuramGvasalia早前才透露品牌经营策略的秘密–Vetements如何成为人人热议的话题品牌。但似乎他仍有更多需要解释的东西–这个法国奢侈品牌最新...

狗爷Snoop Dogg的《I Wanna Thank Me》巡回演唱会旧金山站

西海岸匪帮说唱歌手SnoopDogg在《IWannaThankMe》巡回演唱会旧金山站表演(图片来自ICphoto)西海岸匪帮说唱歌手SnoopDogg(图片来自ICphoto)西海...

取消回复欢迎 发表评论: