学成在线-第20天-讲义-DevOps 七

4.2.3 编写Pom.xml 
本例子将xc-govern-center工程使用Jenkins进行构建。 
xc-govern-center工程根目录编写pom_docker_registry.xml 
此文件相比工程原有pom.xml增加了docker-maven-plugin插件,其作用是构建docker镜像并将镜像推送到 
Docker私有仓库(192.168.101.64:5000)。

<?xml version="1.0" encoding="UTF‐8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema‐instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
[url]http://maven.apache.org/xsd/maven[/url]‐4.0.0.xsd">
<parent>
<artifactId>xc‐framework‐parent</artifactId>
<groupId>com.xuecheng</groupId>
<version>1.0‐SNAPSHOT</version>
<relativePath>../xc‐framework‐parent/pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>xc‐govern‐center</artifactId>
<version>1.0‐SNAPSHOT</version>
<dependencies>
<!‐‐ 导入Eureka服务的依赖 ‐‐>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring‐cloud‐starter‐netflix‐eureka‐server</artifactId>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}‐${project.version}</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐maven‐plugin</artifactId>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker‐maven‐plugin</artifactId>
<version>1.0.0</version>
<!‐‐docker镜像相关的配置信息‐‐>
<configuration>
<!‐‐镜像名,这里用工程名‐‐>
<imageName>${project.artifactId}‐${project.version}</imageName>
<!‐‐Dockerfile文件所在目录‐‐>
<dockerDirectory>${project.basedir}/src/main/resources</dockerDirectory>
<!‐‐TAG,这里用工程版本号‐‐>
<imageTags>
<imageTag>${project.version}</imageTag>
</imageTags>
<registryUrl>192.168.101.64:5000</registryUrl>
<pushImage>true</pushImage>
<imageName>192.168.101.64:5000/${project.artifactId}:${project.version}
</imageName>
<!‐‐构建镜像的配置信息‐‐>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.artifactId}‐${project.version}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
</plugins>
</build>
</project>

4.4 创建持续集成任务 
4.4.1创建构建任务 
创建学成在线的构建任务:
 

4.4.2 配置git仓库 
1、配置git凭证 
此凭证用于远程从git仓库克隆工程源代码 
输入git仓库的账号和密码,这里如果使用码云,下边需要配置码云的账号和密码。

 
2、配置git仓库地址,此地址即xc-edu项目的地址

 
4.4.3 maven构建配置 
目标: 
使用jenkins重复构建不要产生重复镜像 
使用jekins停止容器、删除容器、删除镜像之间进行判断 
构建过程分为三步: 
本例子以构建xc-govern-center工程为例,其它工程构建方式类似。 
1、使用shell脚本停止容器、删除容器、删除镜像 
远程登录192.168.101.64(测试服务器
停止xc-govern-center容器 
删除xc-govern-center容器 
删除192.168.101.64:5000/xc-govern-center:1.0-SNAPSHOT镜像 
shell脚本如下:

#!/bin/bash
result=$(docker ps | grep "192.168.101.64:5000/xc‐govern‐center")
if [[ "$result" != "" ]]
then
echo "stop xc‐govern‐center"
docker stop xc‐govern‐center
fi
result1=$(docker ps ‐a | grep "192.168.101.64:5000/xc‐govern‐center")
if [[ "$result1" != "" ]]
then
echo "rm xc‐govern‐center"
docker rm xc‐govern‐center
fi
result2=$(docker images | grep "192.168.101.64:5000/xc‐govern‐center")
if [[ "$result2" != "" ]]
then
echo "192.168.101.64:5000/xc‐govern‐center:1.0‐SNAPSHOT"
docker rmi 192.168.101.64:5000/xc‐govern‐center:1.0‐SNAPSHOT
fi



 
3、拉取镜像,创建容器,启动容器 
docker私有仓库拉取镜像并创建容器,启动容器 
显示容器运行日志

 
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值