运维开发网

Docker 多模块项目打包

运维开发网 https://www.qedev.com 2020-07-07 11:21 出处:网络 作者:运维开发网整理
创建Dockerfile文件   此处的参数说明: FROM openjdk:8-jdk-alpine 基与jdk1.8 VOLUME /tmp 挂载容器的位置 ADD kitty-generator-1.0.0.jar app.jar 宿主机器的jar文件 移动到 容器的jar文件 ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./

创建Dockerfile文件

Docker 多模块项目打包

 

此处的参数说明:

FROM openjdk:8-jdk-alpine  基与jdk1.8
VOLUME /tmp   挂载容器的位置
ADD kitty-generator-1.0.0.jar app.jar   宿主机器的jar文件 移动到 容器的jar文件 
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]  容器执行的命令

EXPOSE 9000 爆漏端口 下面docker run -p 就不需要使用了,

EXPOSE 9092 写多个就会暴露多个端口

若要执行调优内存:加参数如下

Docker 多模块项目打包

 

 

 

2:POM.xml配置 加入docker:build插件

 <artifactId>kitty-generator</artifactId>  此处和下面${project.artifactId} 对应

<version>${project.version}</version>

<packaging>jar</packaging> 此处改为jar包方式

<properties>
   *****

<docker.image.prefix>kitty</docker.image.prefix> 此处和下面${docker.image.prefix} 对应

</properties>

#下面为jar方式.

    <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!-- Docker maven plugin --> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.0.0</version> <configuration> <imageName>${docker.image.prefix}/${project.artifactId}</imageName> <dockerDirectory>src/main/docker</dockerDirectory> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}</directory> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration> </plugin> </plugins>

 

 

 

在父模块打包

mvn clean install package -Dmaven.test.skip  

 

在子模块执行生成镜像

mvn docker:build -Dmaven.test.skip

Docker 多模块项目打包

 

启动镜像

docker run -itd -p 9000:9000 kitty/kitty-generator

 -it  可以交互进入容器

-d   后台运行

-p 端口映射,若项目有多个端口,  -p 9000:9000 -p 9092:9092 写多个即可

0

精彩评论

暂无评论...
验证码 换一张
取 消