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 查看一下:

 

 

 

 

 

posted on 2022-03-31 15:48  瞿亮  阅读(467)  评论(0编辑  收藏  举报

导航