Jeekins构建Springboot服务

本文详细指导了如何下载并安装Jenkins,配置JDK,安装Git和Maven,设置Maven私服,以及在SpringBoot项目中集成Maven并进行构建。涉及的内容包括插件安装、远程地址配置和构建脚本的编写。
摘要由CSDN通过智能技术生成

下载Jenkins

wget https://repo.huaweicloud.com/jenkins/redhat-stable/jenkins-2.346.1-1.1.noarch.rpm

rpm -ivh jenkins-2.346.1-1.1.noarch.rpm

配置jdk

vi  /etc/init.d/jenkins

#添加jdk路径如下
/usr/local/tools/jdk1.8.0_144/bin/java

修改启动命令

$ vim /usr/lib/systemd/system/jenkins.service

在这里插入图片描述

修改后执行

$ systemctl daemon-reload

添加软链接

 ln -s /usr/local/tools/jdk1.8.0_144/bin/java /usr/bin/java

启动服务

systemctl start jenkins

访问

访问http://192.168.82.116:8080

在这里插入图片描述

查看密码

$ vim /var/lib/jenkins/secrets/initialAdminPassword

在这里插入图片描述

创建用户

在这里插入图片描述
在这里插入图片描述

创建视图

在这里插入图片描述
在这里插入图片描述

新建Item

在这里插入图片描述
在这里插入图片描述

配置git环境和maven的setting.xml

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

安装Git

yum install -y git

在这里插入图片描述

安装插件

Publish Over SSH

在这里插入图片描述
在这里插入图片描述

安装完成重启jenkins

配置远程地址

在这里插入图片描述
找到Publish over SSH
在这里插入图片描述
在这里插入图片描述
Remote Directory为远程服务器项目地址。jenkins拉取项目后会把jar包拉取至此处

配置密码

在这里插入图片描述

项目设置git

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

构建

在这里插入图片描述

构建脚本

jeekins构建项目,默认拉取项目到服务器。进入服务器查看

cd /var/lib/jenkins/workspace
source /etc/profile
#服务器中jenkins的工作空间。切换至该目录,且执行install命令打包
cd /var/lib/jenkins/workspace/service-user
/usr/local/tools/apache-maven-3.5.0/bin/mvn -U clean install
#打完包后将jar包移至study-service目录下。同时publish-over-ssh配置的usr/local/springboot目录下会生成该目录以及jar包
cd /var/lib/jenkins/workspace/service-user/study-service/study-user-service
mv -f ./target/*.jar ../

参考。不用

source /etc/profile

cd /var/lib/jenkins/workspace/service-user/study-service/study-user-service
/usr/local/tools/apache-maven-3.5.0/bin/mvn -U clean install

cd /var/lib/jenkins/workspace/service-user/study-utils/study-service-dependency
/usr/local/tools/apache-maven-3.5.0/bin/mvn -U clean install
cd /var/lib/jenkins/workspace/service-user/study-utils/study-common
/usr/local/tools/apache-maven-3.5.0/bin/mvn -U clean install
cd /var/lib/jenkins/workspace/service-user/study-service/study-user-service
/usr/local/tools/apache-maven-3.5.0/bin/mvn -U clean install package -Dmaven.test.skip=true
mv -f ./target/*.jar ../

构建后操作

在这里插入图片描述
在这里插入图片描述

1 为ssh远程服务器地址
2 为jenkins工作空间下的项目地址;也就是jenkins install后的jar包地址
  	上面我们把jar包移动到jenkins工作空间元目录下的study-service下
  	jenkins元空间地址为 /var/lib/jenkins/workspace/service-user
3 启动jar包命令  dev dev为nacos的conf-space和env

启动脚本

#!/bin/bash
#source /etc/profile
cd /usr/local/springboot/study/study-service
SERVICE_STATUS=`ps -ef|grep "${1}.jar"|grep -v grep|awk '{print $2}'`
if [[ -n ${SERVICE_STATUS} ]];then
    kill -9 `ps aux|grep "${1}.jar"|grep -v grep|awk '{print $2}'`
fi
java -jar -Dnacos-addr=8.131.67.161:8848 -Dconfig-space=${2} -Denvironments=${3} ${1}.jar

强制从私服拉取依赖

$ mvn -U clean install package

配置maven配置文件

settings.xml配置maven私服密钥

<?xml version="1.0" encoding="UTF-8"?>

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

  <localRepository>/usr/local/tools/apache-maven-3.5.0/repo</localRepository>


  <pluginGroups>
    <!-- pluginGroup
    | Specifies a further group identifier to use for plugin lookup.
    <pluginGroup>com.your.plugins</pluginGroup>
    -->
  </pluginGroups>


  <proxies>

  </proxies>

  <!-- 阿里私服 -->
  <servers>
    <server>
      <id>rdc-releases</id>
      <username>637c727d368f478310134f7b</username>
      <password>WIb_o=RRtdAh</password>
    </server>
    <server>
      <id>rdc-snapshots</id>
      <username>637c727d368f478310134f7b</username>
      <password>WIb_o=RRtdAh</password>
    </server>
  </servers>

  <mirrors>
    <mirror>
      <id>alimaven</id>
      <mirrorOf>central</mirrorOf>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
    </mirror>
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>        
    </mirror>


  </mirrors>

  <profiles>

    <profile>  
      <id>jdk-1.8</id>  
      <activation>  
        <activeByDefault>true</activeByDefault>  
        <jdk>1.8</jdk>  
      </activation>  
      <properties>  
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target> 
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>  
      </properties>  
    </profile>  

  </profiles>


</settings>

SpringBoot项目Maven依赖

    <repositories>
        <repository>
            <id>rdc-releases</id>
            <name>aliyun nexus</name>
            <url>https://packages.aliyun.com/maven/repository/2305131-release-NESCic</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>rdc-snapshots</id>
            <name>aliyun nexus</name>
            <url>https://packages.aliyun.com/maven/repository/2305131-snapshot-ueGlRq</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>

        <repository>
            <id>io.spring.repo.maven.release</id>
            <url>http://repo.spring.io/release/</url>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
            </releases>
            <snapshots><enabled>false</enabled></snapshots>
        </repository>
    </repositories>

    <pluginRepositories>
        <pluginRepository>
            <id>public</id>
            <name>aliyun nexus</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

    <distributionManagement>
        <repository>
            <id>rdc-releases</id>
            <url>https://packages.aliyun.com/maven/repository/2305131-release-NESCic</url>
        </repository>
        <snapshotRepository>
            <id>rdc-snapshots</id>
            <url>https://packages.aliyun.com/maven/repository/2305131-snapshot-ueGlRq</url>
        </snapshotRepository>
    </distributionManagement>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值