docker学习(六) 使用maven构建springboot docker镜像并push到nexus

使用maven构建springboot docker镜像并push到nexus

前面学习了使用gradle构建springboot docker镜像,docker学习(三) gradle 使用docker插件自动构建springboot工程,现在学习使用maven插件构建,插件采用 com.spotify docker-maven-plugin。springboot maven 构建docker镜像工程github地址。 nexus的安装可参考上一篇的介绍,maven环境的安装不用介绍了,很简单,可参阅资料安装。

1 按照github地址构建一个springboot工程并配置插件。pom.xml如下:



    4.0.0

    com.zqw
    docker-maven
    1.0
    
    
        org.springframework.boot
        spring-boot-starter-parent
        2.1.0.M1
    

    
    
        
            org.springframework.boot
            spring-boot-starter-web
        
    

    
    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            

            
                com.spotify
                docker-maven-plugin
                1.1.1
                
                    192.168.1.4:7003/dockermaven:1.0
                    java
                    ["java", "-jar", "/${project.build.finalName}.jar"]
                    
                        
                            /
                            ${project.build.directory}
                            ${project.build.finalName}.jar
                        
                    
                    docker
                
            
        
    

    
    
    
        
            spring-snapshots
            https://repo.spring.io/snapshot
            true
        
        
            spring-milestones
            https://repo.spring.io/milestone
        
    
    
        
            spring-snapshots
            https://repo.spring.io/snapshot
        
        
            spring-milestones
            https://repo.spring.io/milestone
        
    


下面是docker插件的代码,imageName标签指定镜像名称,前面的IP 端口与nexus一致,baseImage对应DockerFile的From entryPoint也与DockerFile的entryPoint一样,指定启动命令以及参数。


                com.spotify
                docker-maven-plugin
                1.1.1
                
                    192.168.1.4:7003/dockermaven:1.0
                    java
                    ["java", "-jar", "/${project.build.finalName}.jar"]
                    
                        
                            /
                            ${project.build.directory}
                            ${project.build.finalName}.jar
                        
                    
                    docker
                
            

上面的配置中还有个serviceId标签。对应maven settings.xml配置文件的一个server


  docker
  docker
  docker
  
    [email protected]
  


其中id标签对应上面的serviceId,username password email分别对应nexus仓库对应的用户名、密码、email。
至此配置结束

2 运行命令 mvn clean package docker:build -DpushImage 。可以发现nexus中已经push成功了。如下:
docker学习(六) 使用maven构建springboot docker镜像并push到nexus_第1张图片

上一篇 使用nexus管理docker镜像

下一篇 windows下使用docker

你可能感兴趣的:(docker)