JenKins快速安装与使用

一、JenKins

0.准备,配置好环境

1)Git(yum安装)

2)JDK(自行下载)

3)Jenkins(自行下载)

1.下载安装包

进官网,点Download下方即可下载。要下载其他版本,就点past,下载war包,然后服务器也需要对应版本jdk。

Jenkins官网:

Jenkins download and deployment

下载其他版本Jenkins:

Java官网:

Java Downloads | Oracle

各种版本都有,下载压缩版即可(后缀为tar.gz)

2.启动

把文件上传到服务器,然后解压Jdk,把Jdk的路径写到/etc/profile中,在启动Jenkins即可。

nohup java -jar jenkins1117.war --httpPort=8095 >/mnt/tools/nohup.out &

#查看密码

ail -fn 200 nohup.out

步骤:

tar -zxvf jdk-17_linux-x64_bin.tar.gz

vim /etc/profile

export JAVA_HOME=/mnt/jdk/jdk-17.0.9

export PATH=JAVA_HOME/bin:PATH

export CLASSPATH=.:JAVA_HOME/lib/dt.jar:JAVA_HOME/lib/tools.jar

source /etc/profile

输入java测试,出现内容就是配置成功

启动Jenkins

nohup java -jar jenkins1117.war --httpPort=8095 >/mnt/tools/nohup.out &

进入Jenkins,查看是否启动成功。如果进不去,就看看防火墙

http://192.168.186.128:8095/

3.进行设置

查看密码:tail -fn 200 /mnt/tools/nohup.out

输入密码

接下来走流程:

安装推荐插件

安装完成,创建账号

设置URL

开始

1)安装插件

安装目前会用到的插件:

Publish Over SSH

NodeJS Plugin

Maven Integration plugin

GitLab Plugin

进入插件管理,安装插件

2)配置变量

进入Global Tool Configuration,在里面设置JDK的位置,Maven,NodeJS的位置,只有安装了才配置。

设置JDK
设置目标服务器

4. 项目自动部署

1、创建项目
2、设置git

直接放git地址会报错,因为访问gitlab项目是要密码的,所以我们可以在下面配置拥有项目的用户的账号密码

添加后,选择即可

3、拉取代码

简单这样配置即可,意思为输出hello,然后把代码拉过来。

这个设置会把git中的代码都放入用户根目录下的oldagecrm文件中

4、启动脚本

第三步把代码拉到目标服务器了,现在执行写好的部署脚本,那么后续就交给脚本了

选择Send files or execute commands over SSH after the build runs

设置执行用户根目录下的脚本。脚本的位置没要求,你也可以把脚本上传到git中,这样每次拉代码都会把脚本也拉过来,然后执行项目中的脚本。

别忘了给脚本执行权限

执行一下Jenkins任务,看看效果。脚本被执行了。

5、测试&修正

运行设置好的Jenkins任务,进控制台看执行日志。

5.Gitlab设置钩子,Webhook

Jenkins任务写好后,就可以在gitlab设置钩子,当gitlab代码更新时,调用Jenkins的任务进行项目更新部署。

实现gitlab触发Jenkins需要安装Build Authorization Token RootVersion 插件,允许匿名访问jenkins。

然后gitlab在项目设置中的webhook中,加入钩子事件,输入Jenkins触发url,就欧克了。

1、安装插件

2、设置Jenkins任务的触发URL

设置好后记得保存,保存后再去访问

3、在Gitlab设置触发

gitlab要使用webhook功能,需要管理员进行开启,开启后,gitlab的项目才能使用webhook功能,以下为流程:

进入需要webhook的项目

相关推荐
忧郁蓝调261 分钟前
Redis不停机数据迁移:基于 redis-shake 的跨实例 / 跨集群同步方案
运维·数据库·redis·阿里云·缓存·云原生·paas
吃螺丝粉8 分钟前
zookeeper权限设置
linux·运维·服务器
代码游侠13 分钟前
学习笔记——HTML网页开发基础
运维·服务器·开发语言·笔记·学习·html
乾元14 分钟前
数据中心流量工程(TE)优化:当 AI 成为解决“维度诅咒”的唯一操纵杆
运维·服务器·网络·人工智能·架构·自动化
代码游侠17 分钟前
应用——基于C语言实现的简易Web服务器开发
运维·服务器·c语言·开发语言·笔记·测试工具
幺零九零零44 分钟前
Docker底层-IPC Namespace(进程间通信隔离)
运维·docker·容器
一只旭宝1 小时前
Linux专题十三:shell脚本编程
linux·运维·服务器
浅陌sss1 小时前
使用Unity从IIS搭建的文件服务器下载资源时出现HTTP/1.1 404 Not Found
运维·服务器·http
电商API&Tina1 小时前
【电商API接口】多电商平台数据API接入方案(附带实例)
运维·开发语言·数据库·chrome·爬虫·python·jenkins
V胡桃夹子1 小时前
Docker快速部署apollo
运维·docker·容器