欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

spring boot 项目利用Jenkins实现自动化部署

程序员文章站 2022-03-09 22:56:45
...

spring boot 项目利用Jenkins实现自动化部署


本文主要讲解利用Jenkins实现spring boot项目的自动化部署:

  • 1.后台技术架构:Spring boot 1.4.2.RELEASE +Mybatis 3+ Redis+ Mysql 5.6+JDK8;
  • 2.代码构建工具:maven 3.3;
  • 3.源代码托管工具:Gitlab;
  • 4.利用maven的docker插件打包成docker镜像在docker容器中部署项目;
  • 5.服务器是阿里云的ECS;

一、安装Jenkins

  1. 阿里云服务器安装Jenkins方式见如下链接地址 :链接
  2. 安装命令:
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum install jenkins
  1. 启动/停止Jenkins:
sudo service jenkins start/stop/restart
sudo chkconfig jenkins on
  1. 安装完成后,默认端口是8080,可以在启动日志中查看管理员密码,日志路径:/var/log/jenkins/jenkins.log;
  2. 安装Jenkins后,启动Jenkins需要Java环境,如果启动报错记得查看服务器是否安装了JRE;
  3. 此时还不能通过ip和端口访问Jenkins,还要配置防火墙:
vim  /etc/yum.repos.d/jenkins.repo  #需要root权限
#在文件中写入如下内容:
firewall-cmd --permanent --new-service=jenkins
firewall-cmd --permanent --service=jenkins --set-short="Jenkins Service Ports"
firewall-cmd --permanent --service=jenkins --set-description="Jenkins service firewalld port exceptions"
firewall-cmd --permanent --service=jenkins --add-port=8080/tcp
firewall-cmd --permanent --add-service=jenkins
firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --reload
#保存退出
firewall-cmd --list-all

到此为止,Jenkins基本安装完成了,在浏览器输入ip:prot 就可以访问了。

二、Jenkins中配置需要部署的项目

1、在Jenkins中安装需要的插件,包括git,maven等相关的插件;
spring boot 项目利用Jenkins实现自动化部署

spring boot 项目利用Jenkins实现自动化部署

spring boot 项目利用Jenkins实现自动化部署

spring boot 项目利用Jenkins实现自动化部署
配置git和自动安装的maven;
1. 新建一个任务:
spring boot 项目利用Jenkins实现自动化部署
不安装maven插件不会有这个选项
3. 具体配置见截图:

spring boot 项目利用Jenkins实现自动化部署

spring boot 项目利用Jenkins实现自动化部署
spring boot 项目利用Jenkins实现自动化部署

spring boot 项目利用Jenkins实现自动化部署
spring boot 项目利用Jenkins实现自动化部署

保存退出后基本就可以构建了,等待漫长的jar下载过程后,你会发现项目已经构建成功了。
三、docker 部署脚本及命令:
1.构建脚本如下(bulid.sh):

#! /bin/sh
cd /var/jenkins_home/workspace/authority_system_backend
echo "mvn install"
mvn clean install -Pdev -Dmaven.test.skip=true
echo "delete project"
docker rm -f authority_system_backend_dev
echo "start project"
docker run -d --name='authority_system_backend_dev'   authority_system_backend_dev:latest

2.构建成功后,见下图:
spring boot 项目利用Jenkins实现自动化部署
蓝色圆点表示构建成功了,小太阳表示构建成功的概率,概率越高,天气越晴朗。