前提准备

1.拥有一台jenkins服务器    192.168.215.50:8080 

2.拥有一台humpback服务器   192.168.215.81:8012

3.有用一台docker服务器    192.168.215.20 (安装jdk)

4.获得一个基础JDK8镜像用来包装我们的应用程序

#先下载一个镜像
docker image pull hub.c.163.com/wuxukun/maven-aliyun:3-jdk-8

10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

 10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

 

# 根据私有仓库,设定标签(必须)
# 为镜像 `hub.c.163.com/wuxukun/maven-aliyun:3-jdk-8` 创建一个新标签 `192.168.215.81:5000/basjdk8docker:v1`
docker tag hub.c.163.com/wuxukun/maven-aliyun:3-jdk-8 192.168.215.81:5000/basjdk8docker:v1

10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

 

#推送镜像到私库
docker push 192.168.215.81:5000/basjdk8docker:v1

10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

 10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

 

#也可以通过api去查看
curl http://192.168.215.81:5000/v2/_catalog

 

 

出现如下问题参照:https://www.cnblogs.com/ff111/p/11889723.html 附的解决方案

10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

 

流程概要

 10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

1.开发人员提交代码到Git服务器

2.触发Jenkins将代码打包

3.Jenkins通过脚本把jar部署到docker服务器,并通过dockerfile将发布的应用构建成镜像

4.在通过脚本文件将构建好的镜像push到私服

5.jenkins通过dockerapi请求Humpback集群创建一个容器

6.humpback通过api请求参数从私库获取镜像并运行容器

7.测试人员或开发人员通过浏览器访问应用

 

配置手顺

1.创建一个新的jenkins任务

10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

 

 10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

item
hello-world

test
-D maven.test.skip=true -U

 

 10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

你自己的代码gitlab地址

 

 10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

 

 10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

${item}/pom.xml
clean  package ${test}
BUILD_ID=DONTKILLME /var/dockerworks/docker.sh

 

 保存jenkins构建配置,并执行,记录红框地址

10.通过jenkins将springboot项目打包成docker镜像部署到humpback集群

 

 

 

[INFO] Building jar: /var/lib/jenkins/workspace/jenkins-gitlab-maven-springboot-humpback/hello-world/target/hello-world-0.0.1-SNAPSHOT.jar

 

2./var/dockerworks目录下创建并编写Dockerfile文件

vi Dockerfile


#从私服下载镜像
FROM 192.168.215.81:5000/basjdk8docker:v1
# 指定当前操作目录
WORKDIR /var/dockerworks
# 把当前目录jar复制到容器根目录
ADD helloworld.jar helloworld.jar
#指定对外端口号
EXPOSE 8090
#启动java程序
#--spring.profiles.active=dev 多环境下指定环境 。 -c为清除以前启动的数据
ENTRYPOINT ["java","-jar","helloworld.jar","--spring.profiles.active=dev","-c"]

 

 

3.创建配置docker.sh脚本

 vi docker.sh