Jenkins教程(五)构建Java服务Docker镜像
2019-09-16 17:14
711 查看
本文主旨
主要记录下如何使用Jenkins构建Java服务的Docker镜像,以及手动部署测试下
前期准备
- 已安装Jenkins
- 为jenkins用户添加到docker组内
- 本地装有maven,配置或使用/etc/profile定义maven的家目录,全局生效
正文
新建个chapter3流水线工程
添加Jenkinsfile的git配置,这里使用的是https://github.com/hellxz/JenkinsfileTutorials.git的chapter3分支
Jenkinsfile内容如下
pipeline { agent any stages { stage('Pull Git Demo') { steps{ //清理工作空间 cleanWs(); //拉取代码 checkout([$class: 'GitSCM', branches: [[name: '*/docker-maven-plugin-2']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'demo']], submoduleCfg: [], userRemoteConfigs: [[url: 'https://github.com/hellxz/SpringBoot-DockerDemo.git']]]) } } stage('Build') { steps { dir('demo') { //切换目录到demo //执行构建镜像命令,这里起作用的是maven的插件 //可以参考https://github.com/hellxz/SpringBoot-DockerDemo.git的使用方法,在docker-maven-plugin-2分支 sh 'mvn clean package docker:build -DskipTests' } } } } post { //这里定义的是后置处理 success { // 构建成功 echo '构建完成,正在清理工作空间' cleanWs(); echo '清理工作空间完成' } failure { // 构建失败,这里使用sh是因为echo不支持使用参数 sh 'echo "构建失败,详情请查看$WORKSPACE"' } aborted { // 构建被中止 echo '构建被中止' } } }
这里直接使用了jenkins本地的maven
另外,检出代码使用的是流水线语法生成的,这里使用的是https://github.com/hellxz/SpringBoot-DockerDemo.git 中的
docker-maven-plugin-2分支
图片看不清右键新标签页查看
保存,立即构建
测试
docker images
这里在pom.xml中定义了两个tag
启动下试试看
$ docker run -d --name=test -p 8080:8080 hellxz/example:latest
访问Jenkins所在ip,我这里是
http://192.168.87.139:8080/greet
结尾
中秋节前一直在忙,距离考试还有一个月了,有时间再继续更新。
本文系Hellxz学习与实践文章,禁止布布扣、码迷、爱码网等第三方爬虫网站爬取,转载请在醒目位置注明出处:https://www.cnblogs.com/hellxz/p/pipeline_maven_docker.html
相关文章推荐
- 利用Dockerfile构建一个基于centos 7,包括java 8, tomcat 7,php ,mysql+mycat的镜像
- Docker 定制ssh、java等基础服务镜像
- [docker]Centos7环境JAVA基础docker镜像构建
- 通过Ruby on Rails和docker构建微服务架构之入门教程
- spring boot结合jenkins自动构建docker镜像并启动容器
- docker构建ssh服务的镜像
- Docker微服务-镜像构建交付和使用Rancher进行容器创建管理
- Docker 定制ssh、java等基础服务镜像
- 持续集成:docker下使用jenkins容器构建docker镜像
- Jenkins 构建Docker镜像执行shell脚本用户权限问题
- docker构建ssh服务的镜像
- 0基础教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)
- 使用Jenkins pipeline流水线构建docker镜像和发布
- Java SpringBoot 项目构建 Docker 镜像调优实践
- docker构建ssh服务的镜像
- 基于jenkins构建应用的docker镜像做持续集成和部署
- 第3章 DockerFile构建Java环境镜像
- Docker在Centos下使用Dockerfile构建远程Tomcat和Jenkins镜像
- 通过Jenkins构建maven项目的Docker镜像
- 【docker】基于Dockerfile构建mysqld服务镜像