IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)

1 准备工作

windows下IDEA安装配置

Windows版idea破解,可用到2100年!!!

windows安装配置maven

IDEA配置maven并添加镜像配置

CentOS7 Docker 安装,当然可以在其他平台安装Docker,你可以尝试一下嘿嘿

CentOS 7部署Docker,启动Docker

查看好安装docker的宿主机的ip:

本人的虚拟机docker宿主机ip:192.168.22.128

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第1张图片

2 在IntelliJ IDEA中安装Docker integration插件 

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第2张图片

3 安装插件后,需要配置连接docker服务端,TCP socket连接的地址即上面docker宿主机的ip+端口号

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第3张图片

4 创建springboot项目,假设创建项目为springboot_maker,创建好修改pom.xml文件,添加注释项



    4.0.0
    
        org.springframework.boot
        spring-boot-starter-parent
        2.1.2.RELEASE
         
    
    com.wugenqiang
    springboot-maker
    1.0.0
    springboot-maker
    Demo project for Spring Boot

    
        1.8
        
        wugenqiang
    

    
        
            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
                1.0.0

                
                
                    
                        build-image
                        
                        package
                        
                            build
                        
                    
                
                
                    ${docker.image.prefix}/${project.artifactId}
                    
                    
                        latest
                    
                    
                    ${project.basedir}/src/main/docker
                    
                    http://192.168.22.108:2375
                    
                        
                            /
                            ${project.build.directory}
                            ${project.build.finalName}.jar
                        
                    
                
            
        
    

5 SpringBootMakerApplication.java 启动类不用修改

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第4张图片

6 创建SpringBootMakerController.java (controller类)

package com.wugenqiang.springbootmaker.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * @author wugenqiang
 * @create 2019-01-18 18:04
 */
@Controller
@RequestMapping(value = "/")
public class SpringBootMakerController {

    //http://localhost:80/就会调用这个方法并输出hello docker! I am wugenqiang
    @RequestMapping("/h")
    public String abc(){
        return "hello docker! I am wugenqiang";
    }
}

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第5张图片

7 设置服务器端口号,默认8080,我设置的是80

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第6张图片

8 点击SpringBootMakerApplication.java 启动类运行调试

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第7张图片

9 本地springboot调试结果

10 创建Dockerfile文件,这个文件用于定义构建镜像的命令

# From java image, version : 8
#指定镜像,这里用网易云仓库的java8镜像
FROM hub.c.163.com/library/java:8-jre

# 挂载test-docker目录
VOLUME /tmp

# COPY or ADD to image
COPY springboot-maker-1.0.0.jar app.jar

RUN bash -c "touch /app.jar"
#默认8080端口,我的server.port=80
#指定项目暴露的端口号,与项目配置一样,即容器配置的暴露端口
EXPOSE 80
ENTRYPOINT ["java", "-jar", "app.jar"]

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第8张图片

11 点击IDEA右侧Maven,点击clean清理,若无error,然后打jar包,成功后会自动创建docker镜像

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第9张图片

成功会显示下面结果

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第10张图片

12 启动IDEA内docker

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第11张图片

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第12张图片

13 右击上图红框内,创建docker容器,按下图填写部分根据实际情况修改,然后点运行

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第13张图片

14 运行结果

IDEA把springboot通过Maven构建项目发布到docker容器中运行实例(入门基础)_第14张图片

测试连通性:输入docker宿主机ip+项目设置的服务器端口号,比如我的是192.168.22.128:80

相关代码我上传到了我的GitHub上,需要的可以下载:https://github.com/wugenqiang/test-docker-springboot-maven-maker

你可能感兴趣的:(Linux,Java,Java,Web,maven,centos,server,tomcat,SpringBoot)