Linux利用Jenkins部署SpringBoot项目保姆级教程

在当今快速发展的软件开发领域,持续集成和持续部署(CI/CD)已经成为提升开发效率、缩短产品上市时间的关键实践。Linux系统以其稳定性和开源友好性,成为众多开发者和企业的首选平台。而Spring Boot,作为一个轻量级的Java应用框架,因其简化的配置和快速的开发周期,受到了广泛的欢迎。

在本篇博客中,我们将深入探讨如何在Linux环境下,利用Jenkins这一强大的自动化服务器,来部署和管理基于Spring Boot的项目。无论您是初学者还是有经验的开发者,本教程都将为您提供一份详尽的指南,从基础的环境搭建到高级的部署策略,确保您能够顺利地将项目从开发环境迁移到生产环境。

我们将逐步介绍Java和Maven的安装,Git的配置以及数据库MySQL和Redis的设置。随后,我们会详细讲解Jenkins的安装和配置,包括插件的选择和用户角色的管理。更重要的是,我们将指导您如何与国内流行的代码托管平台码云进行集成,以及如何通过钉钉实现实时的通知和反馈。

通过本教程,您将掌握一套完整的工具链,帮助您实现自动化测试、构建和部署,从而提高软件质量和开发效率。让我们一起开始这段提升技能的旅程,探索Linux、Jenkins和Spring Boot带来的无限可能。

文章目录

环境部署

java安装

  1. 查看是否已经安装java环境
java 复制代码
rpm -qa|grep java
  1. 如果已经安装可以卸载
java 复制代码
rpm -e --nodeps java*
  1. 查看yum中java版本
java 复制代码
yum search jdk
  1. 发现有java11,列出java11
java 复制代码
 yum list |grep java-11
  1. 安装java11
java 复制代码
yum install -y java-11-openjdk.x86_64
  1. 完成安装,验证
java 复制代码
java -version

maven安装

  1. 下载maven
    下载地址:maven官网,(历史版本下载
  2. 安装maven
java 复制代码
mkdir -p /usr/local/maven

将安装文件上传到Linux,之后解压到安装目录

java 复制代码
tar -zxvf apache-maven-3.8.1-bin.tar.gz

现在maven已经安装完成,接下来开始配置maven

  1. 创建资源目录
java 复制代码
mkdir -p /m2/repository
  1. 添加阿里镜像云
java 复制代码
cd /usr/local/maven/apache-maven-3.8.1/conf
vi settings.xml
<mirror>
	  <id>aliyunmaven</id>
	  <mirrorOf>*</mirrorOf>
	  <name>阿里云公共仓库</name>
	  <url>https://maven.aliyun.com/repository/public</url>
</mirror>

将上述地址更换到下图位置

5.添加本地资源路径

6.添加环境变量

java 复制代码
vi /etc/profile

文件最后增加下边代码

MAVEN_HOME=/usr/local/maven/apache-maven-3.8.1
PATH=$MAVEN_HOME/bin:$PATH
export MAVEN_HOME PATH

保存之后,重新加载配置文件

java 复制代码
source /ert/profile

测试是否生效

java 复制代码
mvn -version

git安装

  1. 安装git
java 复制代码
yum install git
  1. 检查是否安装成功
java 复制代码
git --version

安装成功之后如图:

软件安装

MySQL安装

见文章《CentOS7安装MySQL8》,如果官方地址下载速度太慢,可选择国内镜像下载。

其他

修改yum国内源

由于mysql默认安装地址为国外地址,有时候网络环境会非常慢,可以将yum源修改为国内环境。

修改为阿里源:

java 复制代码
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

之后刷新

java 复制代码
yum clean all // 清理缓存
yum -y update // 更新
yum makecache // 重新建立缓存
修改mysql默认数据目录
java 复制代码
vi /etc/my.cnf

新建目录

java 复制代码
mkdir -p /home/mysql

为目录赋值

java 复制代码
chown -R mysql.mysql /home/mysql

若之后还报错,则需要关闭Selinux

java 复制代码
setenforce 0

关于SeLinux,可参考《mysql8 为什么 要 setenforce 0》

Redis安装

  1. 下载fedora的epel仓库
java 复制代码
yum install epel-release
  1. 安装redis
java 复制代码
yum install redis
  1. redis命令
java 复制代码
service redis start	//	启动
service redis stop	//	停止
service redis status	//	查看状态
chkconfig redis on	//	开机启动
redis-cli	//	本机登录
key *	//	列出所有keg
get [keyName]	//	查看key值

Jenkins安装

Jenkins安装

  1. 根据自己条件挑选合适的版本进行安装,具体版本和java版本对应关系可点击查看。这里以2.440版本为例说明。从镜像网站下载适合自己系统的镜像,此教程为Centos7为例。
  2. 上传到服务器之后,安装Jenkins
java 复制代码
rpm -ivh jenkins-2.440.2-1.1.noarch.rpm

Jenkins配置

配置文件目录

/usr/lib/systemd/system/jenkins.service
  1. 用户修改

  2. 工作目录

  3. 端口

启动Jenkins及查看状态

java 复制代码
service jenkins restart && systemctl status jenkins

访问ip:端口号

查看密码登录之后暂时不安装插件,之后自定义安装。在下图中选择"无"。

插件安装

  1. 如下图所属位置,选择插件进行安装
  2. 推荐插件安装
    1. 汉化插件
    2. 权限插件:Role-based
    3. gitee
    4. 钉钉推送:DingTalk
    5. maven:

用户创建

角色创建

  1. 安全策略修改
    安全策略修改为:role-based strategy
  2. 新建角色
    在"安全"-"Manage and Assign Roles"中创建
  3. 角色配置

码云配置

  1. 全局配置
  2. 源码管理
    在新建maven之后,需要配置gitee源码管理。

    选择"git",填写gitee地址、用户名密码、分支、触发器选择gitee、生成webhook密码、配置gitee的webhook、pom文件(Jenkins的workspace目录)、打包设置(clean package -Dmaven.test.skip=true -Pdev,-P配置文件)、构建脚本

项目创建

  1. 创建视图
  2. 创建一个maven任务

钉钉配置

系统设置-钉钉配置。

  1. 配置通知时机;
  2. 配置webhook地址及加密;
  3. 用户中填写钉钉中手机号,可在机器人发送消息时@对应人
相关推荐
悲伤的创可贴1 分钟前
Docker安装以及简单使用
linux·docker·centos
zhaowangji5 分钟前
ubuntu虚拟机装载共享文件夹导致的诡异错误
linux·运维·ubuntu
小崔爱读书8 分钟前
普元DWS - Linux下安装DWS标准版
linux·运维·服务器
PerfMan24 分钟前
基于eBPF的procstat软件追踪程序垃圾回收(GC)事件
linux·开发语言·gc·ebpf·垃圾回收·procstat
程序员-珍25 分钟前
SpringBoot v2.6.13 整合 swagger
java·spring boot·后端
徐*红32 分钟前
springboot使用minio(8.5.11)
java·spring boot·spring
小安运维日记1 小时前
Linux云计算 |【第三阶段】PROJECT1-DAY1
linux·运维·云计算·apache
骆晨学长1 小时前
基于springboot的智慧社区微信小程序
java·数据库·spring boot·后端·微信小程序·小程序
pyliumy1 小时前
rsync 全网备份
linux·运维·服务器
bjzhang751 小时前
SpringBoot开发——整合SpringDoc实现在线接口文档
spring boot·springdoc