0
点赞
收藏
分享

微信扫一扫

Docker+Jenkins+Gitee+springBoot实现自动化流水线实战(二)

q松_松q 2022-05-06 阅读 54

Docker+Jenkins+Gitee+springBoot实现自动化流水线实战(二)


前言

本文接着上一篇 Docker+Jenkins+Gitee+springBoot实现自动化流水线实战(一)继续交流.本次新增分布式部署+多模块部署+maven私服等


提示:以下是本篇文章正文内容,下面案例可供参考

1. 安装maven私服:

nexus私服搭建
参考:https://blog.csdn.net/gengxiaoming7/article/details/79785552

2.Jenkins所使用的maven配置

建议自己在Jenkins所在服务器安装maven,方便管理,按照以下配置修改maven settings.xml配置文件
maven本地仓库

<localRepository>/mydate/maven_repository</localRepository>

配置私服账户密码

<servers>
    <server>
      <id>maven-releases</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
    <server>
      <id>maven-snapshots</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
  <server>
      <id>maven-public</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
	<server>
      <id>repo</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
</servers>

配置maven私服仓库地址

<profiles>
	 <profile>
      <id>maven-public</id> 
      <repositories>
        <repository>
          <id>maven-public</id> 
          <url>http://127.0.0.1:8081/repository/maven-public/</url> 
          <releases>
            <enabled>true</enabled>
          </releases> 
          <snapshots>
            <enabled>true</enabled> 
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </repository>
      </repositories>
    </profile>
	 <profile>
      <id>repo</id> 
      <repositories>
        <repository>
          <id>repo</id> 
          <url>http://127.0.0.1:8081/repository/repo/</url> 
          <releases>
            <enabled>true</enabled>
          </releases> 
          <snapshots>
            <enabled>true</enabled> 
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </repository>
      </repositories>
    </profile>
	
	 <profile>
      <id>alimaven</id> 
      <repositories>
        <repository>
          <id>alimaven</id> 
          <url>http://maven.aliyun.com/nexus/content/groups/public/</url> 
          <releases>
            <enabled>true</enabled>
          </releases> 
          <snapshots>
            <enabled>true</enabled> 
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </repository>
      </repositories>
    </profile>
	
	 <profile>
      <id>maven-snapshots</id> 
      <repositories>
        <repository>
          <id>maven-snapshots</id> 
          <url>http://127.0.0.1:8081/repository/maven-snapshots/</url> 
          <releases>
            <enabled>true</enabled>
          </releases> 
          <snapshots>
            <enabled>true</enabled> 
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </repository>
      </repositories>
    </profile>
	<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>

3.修改springboot项目所有 pom.xml文件

项目中所有的pom.xml文件都需要增加以下代码:

<distributionManagement>
        <repository>
            <!--这里的id需要和需要和settings.xml中的se中的server的id一致 -->
            <id>repo</id>
            <name>maven-public</name>
            <!--releases仓库 -->
            <url>http://127.0.0.1:8081/repository/repo/</url>
        </repository>
        <snapshotRepository>
            <!--此名称要和maven/settings.xml中设置的ID一致 -->
            <id>maven-snapshots</id>
            <name>Nexus snapshots Repository</name>
            <url>http://127.0.0.1:8081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

4.Jenkins配置

一.配置打包依赖

新建任务(自行百度或者参考上一篇文章)
配置构建步骤
在这里插入图片描述
clean deploy -pl commons -am -U
将依赖打包上传至maven私服,此处选择的maven版本就是Jenkins机器上自己安装的maven.保存后构建依赖
执行成功后可查看maven私服是否上传jar包成功
在这里插入图片描述

二.Jenkins部署springboot

Jenkins 系统管理–>系统设置 拉到最下面配置Publish over SSH(如果没有该插件可以自行在插件管理中下载)
在这里插入图片描述
在这里插入图片描述

springboot项目配置
新建任务
在这里插入图片描述
配置源码参考上一篇文章
构建配置maven
在这里插入图片描述
package -f ./gateway-server/pom.xml -DskipTests docker:build
注意目录结构:通过gitee拉下来的源码默认是从根目录下执行maven命令,所以只执行gateway-server这个项目续先进入该目录.
在这里插入图片描述
配置ssh server
在这里插入图片描述
执行部署命令
在这里插入图片描述


```cpp

```cpp

```powershell
#!/bin/bash 
result=$(docker ps | grep "127.0.1.1:5000/gateway-server")
echo result
if [[ "$result" != "" ]]
then
echo "stop gateway-server"
docker stop gateway-server
fi
result1=$(docker ps -a | grep "127.0.1.1:5000/gateway-server")
if [[ "$result1" != "" ]]
then
echo "rm gateway-server"
docker rm gateway-server
fi
result2=$(docker images | grep "127.0.1.1:5000/gateway-server")
if [[ "$result2" != "" ]]
then
echo "127.0.1.1:5000/gateway-server"
docker rmi 127.0.1.1:5000/gateway-server:1.0-SNAPSHOT
fi


docker run --name gateway-server -p 9250:9250 -idt 127.0.1.1:5000/gateway-server:1.0-SNAPSHOT

保存退出然后点击构建:
在这里插入图片描述


注:文中的ip地址以linux机器ip为准
# 总结
以上是在上一篇的基础上继续深入学习SpringBoot+Docker项目部署,有很多不足,欢迎大家指正,互相交流,文中引用链接,如有侵权,请及时联系我们将予以删除,感谢。
举报

相关推荐

0 条评论