Jenkins+maven+gitlab自动化部署之docker发布sprint boot项目(七)

Jenkins发布docker应用与发布java应用配置基本一致,须要配置Dockerfile及构建的步骤,步骤以下:java

一、jenkins主机构建应用为jar包docker

二、jenkins主机把生产的jar包构建为docekr镜像vim

三、jenkins主机把构建好的镜像推送至镜像仓库centos

四、目标主机去镜像仓库拉取镜像bash

五、目标主机以拉取的最新镜像启动新的服务服务器

注意:须要在jenkins以及目标主机部署docker服务,关于docker的部署网上问的一堆,请自行百度。app

一、新建项目maven

跟据以前建立任务同样,建立maven项目ui

二、项目配置spa

  a)源码管理:指定代码仓库位置,以及分支

  b)build

  

  c)Post Steps

  指定构建docker镜像的命令

  

  说明:这里是说把打包好的jar包复制到咱们建立好的构建eureka镜像的目录

  build.sh 是一个脚本,用来构建镜像,并把镜像推送至指定镜像仓库,脚本内容以下: 

[tchua@centos01 one-eureka]$ vim build.sh
#!/bin/bash docker_hub="registry-vpc.cn-hangzhou.aliyuncs.com/xxx/uat-images" ## 镜像仓库地址 TAG="eureka" #rm docker rmi ${docker_hub}:$TAG  ## 删除上一次构建镜像 #login docker login -u ${USER} -p ${PASSWD} ${docker_hub} ## 登录镜像仓库,${USER} ${PASSWD}修改成本身具体的用户名密码 #build docker build -t ${docker_hub}:$TAG .        ## 构建新镜像,. 是指DOckerfile在当前目录下 #push docker push ${docker_hub}:$TAG            ## 推送镜像至镜像仓库

镜像构建须要一个Dockerfile,Dockerfile文件内容:

FROM registry-vpc.cn-hangzhou.aliyuncs.com/vanje_one/software:java1.8

MAINTAINER vanje@vanje.com.cn

ADD eureka-1.0.0.jar /apps/

EXPOSE 8076

ENTRYPOINT ["java","-jar","/apps/eureka-1.0.0.jar"]

  d)构建后操做

  说明:这里是远程登录服务器执行服务启动脚本。

  脚本内容以下:

#!/bin/bash

docker_hub="registry-vpc.cn-hangzhou.aliyuncs.com/vanje_one/uat-images"  ## 镜像仓库地址

TAG="eureka"
#rm
docker rm -f eureka                        ## 删除现有容器
docker rmi ${docker_hub}:${TAG}                 ## 删除现有容器镜像

#login
docker login -u ${USER} -p ${PASSWD} ${docker_hub} ## 登录镜像仓库,${USER} ${PASSWD}修改成本身具体的用户名密码

docker pull ${docker_hub}:${TAG}                  ## 拉去镜像

docker run --name eureka -p 8076:8076 -d ${docker_hub}:${TAG}  ## 启动指定镜像服务

三、发布

以上保存点击发布后,查看控制台日志能够看到对应的构建信息:

相关文章
相关标签/搜索