• IDEA通过docker插件一键部署springboot应用


    Docker安装部分

    对于Windows 10专业版以下的用户,推荐使用Docker Toolbox

    Windows安装文件:http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/

    对于Windows 10专业版以上的用户,推荐使用Docker for Windows

    Windows安装文件:https://www.docker.com/products/docker-desktop/

    注意:Windows 10家庭版可以用我推荐第二种方式,因为我用的就是docker-desktop,但是具体安装我就不多说了,Windows 10安装Docker还是挺多坑的

    IntelliJ IDEA 相关

    idea连接docker

    配置连接

     点击 + ,添加一个连接

     我们通过TCP的方式连接到 linux 或者是 window 的 docker 服务上。信息配置好之后,idea 会自动检测,然后输出 Connection successful

    然后在工具栏选择 docker 的窗口,点击运行

     接下来我们就可以在 idea 上面操作 docker

    项目相关

    新建一个简单的 springboot 项目

    在项目的 pom.xml 文件加入以下代码:

    <build>
            <plugins>
                <plugin>
                    <groupId>com.spotify</groupId>
                    <artifactId>docker-maven-plugin</artifactId>
                    <version> 1.2.1</version>
                    <executions>
                        <execution>
                            <id>build-image</id>
                            <phase>package</phase>
                            <goals>
                                <goal>build</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <imageName>${project.artifactId}</imageName>
                        <imageTags>
                            <imageTag>test</imageTag>
                        </imageTags>
                        <dockerDirectory>${project.basedir}</dockerDirectory>
                        <dockerHost>http://127.0.0.1:2375</dockerHost>
                        <resources>
                            <resource>
                                <targetPath>/</targetPath>
                                <directory>${project.build.directory}</directory>
                                <include>${project.build.finalName}</include>
                            </resource>
                        </resources>
                    </configuration>
                </plugin>
            </plugins>
        </build>

    在项目根目录下建立一个 docker 文件夹,在 docker 文件夹下新建一个Dockerfile文件,写入一下内容:

    #指定基础镜像,在其上进行定制
    FROM java:8
    
    #维护者信息
    MAINTAINER quliang <529075990@qq.com>
    
    #这里的 /tmp 目录就会在运行时自动挂载为匿名卷,任何向 /tmp 中写入的信息都不会记录进容器存储层。
    VOLUME /tmp
    
    #复制上下文目录下的target/demo-0.0.1-SNAPSHOT.jar 到容器里
    COPY target/demo-0.0.1-SNAPSHOT.jar app.jar
    
    #bash方式执行,使app.jar可访问
    #RUN新建立一层,在其上执行这些命令,执行结束后, commit 这一层的修改,构成新的镜像。
    RUN bash -c "touch /app.jar"
    
    #声明运行时容器提供服务端口,这只是一个声明,在运行时并不会因为这个声明应用就会开启这个端口的服务
    EXPOSE 8080
    
    #指定容器启动程序及参数   <ENTRYPOINT> "<CMD>"
    ENTRYPOINT ["java","-jar","app.jar"]

     然后配置 docker 启动项

    选择编辑:

     添加一个启动项:

     填写 docker 相关参数

     在执行 docker 镜像之前需要把项目进行打包,所以在最下面的操作栏中加入 maven 打包相关命令:

    添加一个 maven 任务:

     添加 maven 打包命令:

     maven 打包分为了几步:

    第一步是清除上次编译或者是打包的文件

    第二步是对项目进行编译以及打成 jar 包

     第三步则是把相关文件拷贝到 target 目录下,这样我们的 docker 对制作镜像时才能找到我们的文件,否则则会在制作过程中报错。

     正常情况:

     docker 部署项目完成

     因为我们是在Windows 10 上使用 docker ,那我们用 Windows PowerShell  

    我们用 Windows PowerShell 查看一下:

     
  • 相关阅读:
    阅读《构建之法(第三版)》提出的问题
    职位部门管理系统
    JSON
    hashcode()和equals()方法
    JSF和Facelets的生命周期
    认识applet
    认识ajax
    hello1.java分析
    vue中的防抖和节流
    vue项目搭建
  • 原文地址:https://www.cnblogs.com/quliang/p/16082207.html
Copyright © 2020-2023  润新知