Jenkins持续集成SpringBoot项目

1效果展示

修改代码。push到远程仓库,等待片刻,刷新浏览器,内容更新,持续集成springboot项目成功。
image.png
image.png
image.png
image.png

2安装(centos 7)

有三种安装方法
1docker安装 (不推荐,会出很多问题)
2war包安装 (需要手动下载上传war包)
3wget命令安装(推荐)

1安装jdk,git,maven,docker配置环境变量

2安装jenkins

第一步 安装

wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum -y install jenkins

第二步 启动服务

启动服务
service jenkins start
停止服务
service jenkins stop

启动之后的界面
image.png

第三步 获取密码

使用cat命令读取上图中的文件获取密码
cat /var/lib/jenkins/secrets/initialAdminPassword
进入jenkins工作目录
cd /var/lib/jenkins/secrets/initialAdminPassword/updates
将镜像源修改
sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

第四步 安装插件

将第三步得到的密码输入到上图管理员密码中,来到安装插件界面,选择安装推荐的插件
image.png

第五步 创建管理员账户,随便填即可

image.png

第六步 配置

image.png
image.png

获取jdk路径
which java
获取git路径
which git
获取maven路径
which mvn

image.png

image.png
image.png
image.png

第七步 配置全局环境变量

image.png
image.png

获取PATH的值
echo $PATH

image.png

3使用jenkins

使用gitee进行演示

1安装插件

image.png
image.png
image.png
搜索gitee安装相关插件

2创建仓库并提交代码

1项目根目录下新建Dockerfile

FROM openjdk:8-jdk-alpine
VOLUME /tmp
COPY ./target/demojenkins.jar demojenkins.jar
ENTRYPOINT ["java","-jar","/demojenkins.jar", "&"]

2修改pom文件

<packaging>jar</packaging>

<build>
        <finalName>demojenkins</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

3提交代码到gitee

3构建持续化集成任务

1新建任务

image.png
image.png

2配置git仓库

image.png
image.png

image.png
选择账户,输入git仓库地址

3设置push到gitee仓库自动构建项目部署

image.png
image.png

接下来将生成的密码添加到gitee仓库
image.pngimage.pngimage.png

4编写shell,打包部署项目

image.png
需要根据自己项目修改的地方是service_name和service_prot ,记得打开服务器的对应的端口

#!/bin/bash
#maven打包
mvn clean package
echo 'package ok!'
echo 'build start!'
cd ./
service_name="demojenkins"
service_prot=8002
#查看镜像id
IID=$(docker images | grep "$service_name" | awk '{print $3}')
echo "IID $IID"
if [ -n "$IID" ]
then
    echo "exist $SERVER_NAME image,IID=$IID"
    #删除镜像
    docker rmi -f $service_name
    echo "delete $SERVER_NAME image"
    #构建
    docker build -t $service_name .
    echo "build $SERVER_NAME image"
else
    echo "no exist $SERVER_NAME image,build docker"
    #构建
    docker build -t $service_name .
    echo "build $SERVER_NAME image"
fi
#查看容器id
CID=$(docker ps | grep "$SERVER_NAME" | awk '{print $1}')
echo "CID $CID"
if [ -n "$CID" ]
then
    echo "exist $SERVER_NAME container,CID=$CID"
    #停止
    docker stop $service_name
    #删除容器
    docker rm $service_name
else
    echo "no exist $SERVER_NAME container"
fi
#启动
docker run -d --name $service_name --net=host -p $service_prot:$service_prot $service_name
#查看启动日志
#docker logs -f  $service_name

最后点击保存即可

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Jenkins是一个开源的自动化工具,可以实现自动构建、测试和部署软件,对于项目开发的自动化流程非常有帮助。而GitHub是一个代码托管平台,可以帮助团队协同开发和版本控制。Spring Boot是一个Java开发框架,可以快速构建独立的、生产级别的应用程序。 Jenkins可以与GitHub和Spring Boot集成,实现自动部署的流程。首先,我们需要在Jenkins中配置GitHub插件,用于与代码仓库进行通信。然后,我们可以设置一个Jenkins的构建任务,指定从特定的GitHub仓库拉取代码,并进行构建和测试。构建任务可以使用Maven或Gradle等工具构建Spring Boot项目。 在构建和测试成功后,我们可以配置Jenkins的部署任务。部署任务可以通过SSH或其他协议连接到应用程序的目标服务器,并将构建生成的可执行文件或部署包部署到目标环境中。在部署之前,我们可以通过Jenkins设置不同的环境变量或配置文件,以适应不同的部署环境。 当我们的代码仓库有新的提交时,Jenkins可以自动检测到变化并触发构建和部署过程,从而实现自动化的持续集成和交付。我们可以通过Jenkins的Web界面来监控构建和部署的状态,查看日志和报告,以及进行必要的调试和操作。 通过Jenkins、GitHub和Spring Boot的组合,我们可以极大地提高开发团队的效率和软件交付的质量。自动化部署可以减少人工操作的错误,并且可以更快地交付新功能和修复。同时,持续集成和持续交付的流程也可以帮助我们更好地管理代码和版本,提高团队的合作和沟通效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RemainsHll

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值