把springboot项目直接编译成镜像文件到远程docker服务器

背景

由于我本地在windows上开发一个spring boot项目,需要使用docker-maven-plugin插件将项目编译为docker镜像到远程linux服务器,所以远程linux服务器上的docker必须开启docker api服务。

具体步骤

  • 编辑docker宿主机文件/lib/systemd/system/docker.service
    sudo vi /lib/systemd/system/docker.service
  • 修改以ExecStart为开头的行
  • ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375
  • 保存修改后的文件
  • 通知docker服务做出的修改
    systemctl daemon-reload
  • 重启docker服务
    sudo service docker restart
  • 测试可以连接到docker api
    curl http://localhost:2375/version
  • 在windows机器上配置环境变量,DOCKER_HOST=tcp://192.168.40.32:2375(docker宿主机的ip地址)
  • eclipse中maven项目的pom.xml文件内容:
  • 4.0.0

        com.bolingcavalry
        k8stomcatdemo
        0.0.1-SNAPSHOT
        jar

        k8stomcatdemo
        Demo project for Spring Boot

        
            org.springframework.boot
            spring-boot-starter-parent
            1.5.9.RELEASE
            
        

        
            UTF-8
            UTF-8
            1.8
        

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

            
                org.springframework.boot
                spring-boot-starter-test
                test
            

        

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

                
                
                    com.spotify
                    docker-maven-plugin
                    0.4.12
                    
                    
                        
                        zsj/${project.artifactId}
                        
                        true
                        
                        
                            ${project.version}
                        

                        
                        java:8u111-jdk
                        
                        ["java", "-jar", "/${project.build.finalName}.jar"]
                        
                        
                            
                                /
                                ${project.build.directory}
                                ${project.build.finalName}.jar
                            

                        

                    

                

            
        

  •  在eclipse中选择maven,Run Configurations,配置如下信息,然后点击RUN按钮。
  • 把springboot项目直接编译成镜像文件到远程docker服务器_第1张图片
  • 上一步骤进行完之后,需要耐心等待,过程比较缓慢。

以上步骤都完成之后,在docker服务器上运行docker images,就可以看到本项目编译之后的镜像。

 

 

你可能感兴趣的:(虚拟化)