使用Maven打包Docker镜像-Jenkins版

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

前提:Jenkins服务器上安装好Docker,创建Jenkins任务,配置好代码来源,和Build配置:

使用Maven打包Docker镜像-Jenkins版_第1张图片

pom.xml中添加docker-maven-plugin:


    com.spotify
    docker-maven-plugin
    0.4.13
    
        ${docker.image.prefix}/${project.artifactId}
        https://192.168.99.100:2376
        C:\Users\Administrator\.docker\machine\machines\default
        
        java:8
        ["java", "-jar", "/${project.build.finalName}.war"]
        
            
                /
                ${project.build.directory}
                ${project.build.finalName}.war
            
        
    

与在本地打包相比,主要增加了dockerHost和dockerCertPath两个配置属性。

如果没有配置这两个属性,构建失败,报如下错误:

maven的docker插件在构建过程中没有找到docker虚拟机,因为构建结果产生的image必须基于一台docker虚拟机。为了解决这个错误,做了如下尝试:

1)更新docker-maven-plugin的版本到0.4.13,依然报该错。

0.4.13

2)安装Jenkins的Docker插件和docker-build-step插件,依然报该错。

详细过程

3)根据https://stackoverflow.com/questions/35549854/maven-package-dockerbuild-connection-refused

在配置中添加dockerHost和dockerCertPath,这两个属性值可从Jenkins服务器上的Docker获取

使用Maven打包Docker镜像-Jenkins版_第2张图片

问题解决!构建产生的镜像可以在Jenkins服务器的Docker上通过docker image ls查询到。

转载于:https://my.oschina.net/u/4042451/blog/3038867

你可能感兴趣的:(使用Maven打包Docker镜像-Jenkins版)