IDEA部署Docker项目
准备工作
需要安装好 Docker,Windows 和 Linux 都行,开启远程连接即可,开启的方式不同系统各不相同,网上百度即可
IDEA 安装 Docker 插件,最新的貌似自带安装有,添加 Docker 的远程连接:
在 File –> Settings –> Build, Execution, Deployment –> Docker 中添加连接路径:
连接好之后,可以看到 Docker 镜像和容器:
创建项目
创建一个 SpringBoot 项目,随便写一个接口,然后在项目中添加 Dockerfile 文件
Dockerfile 文件内容如下:
FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD docker-demo-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
接着在 POM 文件中添加相应的配置:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<dockerDirectory>src/docker</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<!--绑定mvn package命令,当执行package这个maven命令打包项目的同时
会把target目录下的jar包给copy到docker目录去 todir根据你dockerfile文件的实际路径填写-->
<executions>
<execution>
<phase>package</phase>
<configuration>
<target>
<copy todir="src/docker" file="target/${project.artifactId}-${project.version}.${project.packaging}"></copy>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
然后添加一个 Docker 的启动项,并对其进行配置:
1.Name:这个根据自己的项目进行命名
2.Server:这个就是远程的服务器上的docker
3.Dockerfile:这个就是自己项目的Dockerfile文件
4.Image Tag:不能重复根据自己项目来定义
5.Container name:创建你自己生成容器的名字
6.Bindports:绑定服务器对外提供的端口和自己项目的端口(阿里云的端口需要在后台自行管理打开)
格式为[宿主机端口]:[容器内部端口]
然后 Maven 执行 Packer 指令,执行完成后,在你的 Dcokerfile 文件目录下,会有一个 jar 包,就是你打包好的,接着运行 Docker 启动项:
看到 success 表示我们成功了,我们就可以访问我们的网页了。
参考
文章1:https://blog.csdn.net/weixin_42687829/article/details/104249583
文章2:https://blog.csdn.net/ZouChengli/article/details/106616879