SpringBoot + Jenkins + Docker + Git自动化部署

SpringBoot + Jenkins + Git自动化部署

1、Jenkins安装

到Jenkins的官网:http://jenkins.io下载jenkins.war文件

然后将jenkins.war文件上传到Linux服务器,执行jar -jar jenkins.war命令启动Jenkins

在浏览器中输入http://服务器IP:8080访问Jenkins

在页面上如何授权码进入Jenkins,授权码可以在启动Jenkins的命令行中看到,只有第一次进入时需要输入授权码
在这里插入图片描述
点击Install suggested plugins,安装Jenkins建议安装的插件,如果部分插件没有安装成功,可以重复多次,直到所有的插件都安装成功
在这里插入图片描述
创建用户
在这里插入图片描述
再安装几个比较好用的Jenkins插件:Rebuilder、Safe Restart、Publish Over SSH、Maven Integration
依次点击:系统管理 -> 插件管理 -> 可选插件,输入插件名搜索插件
在这里插入图片描述
点击直接安装

给刚创建的用户分配权限
依次点击:系统管理 -> 全局安全配置 -> 安全矩阵 -> User or group name
在这里插入图片描述
点击User or group name,添加自己的账号(我的是admin账号),给账号分配权限,我是给该账号所有的权限,如果是普通的账号,可以去掉Administrator(第一个,系统管理的权限)

2、Linux服务器设置

①开启ssh远程连接
查看ssh远程连接状态命令:netstat -anp | grep :22
开启ssh远程连接:service sshd start

②关闭防火墙
关闭防火墙命令:service iptables stop
查看防火墙状态:service iptables status

③安装Java jdk
安装Java jdk命令:yun install java
查看是否安装成功:java -version
在这里插入图片描述

④安装并配置Git

  1. 安装Git命令:yum install git

  2. 查看git是否安装成功:git version
    在这里插入图片描述

  3. 将git初始化并生成授权证书

    • 设置用户名和邮箱,用户名和邮箱不需要是真实的个人信息
      在这里插入图片描述
    • 生成授权证书,中间直接全部回车就行
      在这里插入图片描述
    • 查看证书是否生成成功
      在这里插入图片描述
      ​ id_rsa是私钥,id_rsa.pub是公钥
    • 将git证书配置到GitHub上,保证Linux服务器和GitHub之间可以联通
      在GitHub中依次点击:setting -> SSH and GPG keys -> new SSH key,将公钥中的内容复制到SSH key中
      在这里插入图片描述
    • 验证git的配置是否正确
      在这里插入图片描述
  4. 安装并配置maven
    到maven官网http://maven.apache.org获取apache-maven-3.6.0-bin.zip的下载链接
    在这里插入图片描述
    在Linux服务器下载maven
    在这里插入图片描述
    解压apache-maven-3.6.0-bin.zip
    在这里插入图片描述
    在/etc/profile中配置maven,将maven的安装路径加入到PATH中
    在这里插入图片描述
    重新加载/etc/profile文件,并查看maven是否安装成功
    在这里插入图片描述

3、将Linux注册到Jenkins上

①新建节点
在Jenkins中依次点击:系统管理 -> 节点管理 -> 新建节点
在这里插入图片描述
点击确定按钮,然后配置Jenkins在Linux中的路径、LInux服务器的IP地址、Linux服务器的账号和密码
在这里插入图片描述

②启动从节点验证Linux服务器已经成功注册到Jenkins上
点击我们刚添加的节点,然后点击启动代理按钮,连接Linux服务器
在这里插入图片描述
如果连接服务器时出现如下错误信息
在这里插入图片描述
就将Host Key Verrification Strategy配置成Non Verfifying Verrification Strategy
在这里插入图片描述

4、新建Job验证Jenkins任务可以远程运行在Linux服务器上

在Jenkins主页点击【开始创建一个新任务】按钮,然后输入任务名,选择构建一个maven项目,注意:只有安装了Maven Integration插件才有这个选项
在这里插入图片描述
点击【确定】按钮
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击【保存】按钮

shell脚本的内容,根据项目的实际需求编写

#!/bin/sh

echo "开始执行shell脚本"

# 在jenkins环境中一定要加这句话,否则这个脚本进程最后会被杀死
export BUILD_ID=dontKillMe

# 指定最后编译好的jar的存放位置
JAR_PATH=/opt/workspace/project-management

# 如果路径不存在,就创建路径
[ ! -e $JAR_PATH ] && mkdir -p $JAR_PATH

# 指定jenkins中存放编译好的jar的位置
JENKINS_JAR_PATH=/root/.jenkins/workspace/project-management/target

# 指定jenkins中存放编译好的jar的名称(这个jar的名字和pom文件配置有关)
JENKINS_JAR_NAME=project-management-0.0.1-SNAPSHOT.jar

# 获取该项目的进程号,用于重新部署项目前杀死进程
PORJECT_MANAGEMENT_PID=`ps -ef | grep project-management`
# 如果该项目正在运行,就杀死项目进程
if [ -n "$PORJECT_MANAGEMENT_PID"]
then 
	echo "停止服务"
	kill -9 $PORJECT_MANAGEMENT_PID
else 
	echo "服务未启动"
fi

# 进入Jenkins中编译好的jar的位置
cd ${JENKINS_JAR_PATH}

# 将Jenkins中编译好的jar复制到最终存放项目jar的位置
cp $JENKINS_JAR_PATH/$JENKINS_JAR_NAME $JAR_PATH

# 进入到存放项目jar的位置
cd ${JAR_PATH}

# 后台启动项目,并且将控制台日志输出到project-management.log中
nohub java -jar ${JENKINS_JAR_NAME} > project-management.log &

echo "shell脚本执行完毕"

然后点击【立即构建】按钮,构建项目,点击下面的#1就可以看到到项目的详情
在这里插入图片描述
可以在 控制台输出中查看到控制台中打印出的内容,可以看到刚才在shell中输入的命令被执行了
在这里插入图片描述
至此,我们的spring boot项目就自动部署成功了。

参考:
https://blog.csdn.net/javahongxi/article/details/79501188
https://blog.csdn.net/w105021/article/details/78657382

猜你喜欢

转载自blog.csdn.net/hsg_happyLearning/article/details/85773306