快速搭建Jenkins自动化集成cicd工具

一、简介

jenkins是一款优秀的自动化持续集成运维工具,可以极大的简化运维部署的步骤。

传统的项目部署需要手动更换最新的项目代码,然后打包并运行到服务器上。

使用Jenkins可以自动化实现,当代码编写完成并提交到git后,Jenkins可以自动的拉取最新的代码,并编译打包,打包完成后可以自动去启动运行完成项目部署,无需手动操作,极大地提高了工作效率.

二、前置知识准备

如果想使用jenkins,你需要至少掌握以下知识:

java,maven,git,基础的linux命令

三、环境要求

  • Jenkins是用java开发的,所以部署环境需要有java环境;(现在的jenkins要求jdk至少11及以上,否则会出现无法启动,插件无法下载等问题)
  • 现在的项目大多数都是maven管理的,项目打包需要有maven环境;
  • 项目更新需要通过git来拉取,需要安装git;
  • 代码托管远程仓库可以搭建gitlab,当然也可以使用github或者gitee等远程仓库;
  • jenkins对服务器配置要求比较高,服务器内存至少要有4G(如果2G服务器全新环境没有其他项目运行的话可以跑)

四、搭建总览

1、Jenkins安装文件是一个war包,可以通过`java -jar xxx.war`启动,默认端口为8080

2、启动后会在服务器上输出初始化的密码,将密码复制到运行页面进行初始化

3、创建账号登录后,下载插件,配置git项目路径,maven存储仓库路径

4、配置构建项目的位置,前置后置

5、使用Jenkins测试构建项目

五、搭建

从Jenkins官网下载(下面步骤是安装在linux服务器上的)官网下载https://www.jenkins.io/download/

具体操作如下:

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-2023.key

使用国内镜像下载

bash 复制代码
 yum install https://mirror.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.401.2-1.1.noarch.rpm

下载完成后找到安装包位置

bash 复制代码
find / -name jenkins.war

启动服务

bash 复制代码
java -jar /usr/share/java/jenkins.war

效果如下:

会生成一串初始密码,说明Jenkins已经启动

打开浏览器 ip:8080进入Jenkins应用页面,复制密码

选择默认安装,然后就会下载插件,创建账户

完成安装,进入jenkins控制台

接下来需要给Jenkins配置maven,git等自定义配置

六、自定义配置

一、maven插件构建项目

首先确保服务器的git,maven是已经安装配置好的,安装过程不再赘述

maven3.8.6安装包:

链接:https://pan.baidu.com/s/1wVh3F32P1UiegBjrV6aXoA

提取码:jxp8

ps:记得配置国内镜像

1、下载maven插件

然后安装完成后可以开始构建任务,控制台首页-构建新任务

2、配置git和maven

git

maven

3、配置好后,开始构建

控制台会实时打印输出

因为是第一次构建,需要下载jar包,时间会稍长

build success说明构建成功了

我们可以进入路径查看构建好的文件

运行一下项目看看

浏览器打开发现是可以访问的

当然这种手动启动项目的方式也是可以通过Jenkins来自动化启动

二、自动化启动项目

下载插件

安装好后配置服务器信息

设置完测试一下,如果success说明配置成功,保存

接下来配置已构建任务中的后续步骤

设置好后立即构建

构建完成后发现也自动启动好了项目

浏览器也能正常访问

至此,Jenkins自动构建项目并自动运行项目完成。

当然也有可以优化的地方,比如当更新构建时,可以在执行前先关闭项目运行,并把之前的项目文件先删除再更新;设置超时时间等,大家也可以动手试试。

参考文档:​​​​​​使用yum命令安装Jenkins时的常见问题及解决方案-CSDN博客

【尚硅谷】Jenkins教程(从配置到实战)_哔哩哔哩_bilibili

相关推荐
代码游侠几秒前
应用——Linux Socket编程
运维·服务器·开发语言·笔记·网络协议·学习
张火火isgudi6 分钟前
VMware Debian 挂载 Windows 文件夹至 Debian 目录
linux·运维·windows·debian
石小千9 分钟前
Jenkins升级版本(2.289.3-2.528.3)
jenkins
神算大模型APi--天枢64615 分钟前
2025 国产算力破局后,大模型训练数据集如何实现 “合规采集 + 高效清洗”?
运维·服务器·人工智能·架构·硬件架构
代码游侠18 分钟前
学习笔记——sqlite3 数据库基础
linux·运维·网络·数据库·笔记·学习·sqlite
QT 小鲜肉18 分钟前
【Linux命令大全】001.文件管理之od命令(实操篇)
linux·运维·服务器·chrome·笔记
珂玥c20 分钟前
virsh启用linux虚拟机+忘记密码的操作
linux·运维·服务器
2501_9399090536 分钟前
Docker(3)
运维·docker·容器
irisart39 分钟前
第二章【NGINX 开源功能】—— 四层反向代理
运维·nginx·开源