springboot~maven集成开发里的docker构建

2019-11-27 16:04:30来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

springboot~maven集成开发里的docker构建

统一设计

maven很好的把项目整合在一起,在部署时,每个项目可以有自己的Dockerfile,在构建后把对应的jar包复制到Dockerfile的同级目录,使用使用统一的打包镜像和容器启动方法去执行就可以了。

需要大maven根项目添加插件

    <build>
        <plugins>
            <plugin>
                <artifactId>maven-antrun-plugin</artifactId>
                <executions>
                    <execution>
                        <id>copy</id>
                        <phase>package</phase>
                        <configuration>
                            <tasks>
                                <!-- 把jar包复制到/src/main/docker文件夹 -->
                                <copy todir="${project.basedir}/src/main/docker">
                                    <fileset dir="${project.build.directory}">
                                        <include name="${project.artifactId}-${project.version}.jar"/>
                                    </fileset>
                                </copy>
                            </tasks>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!--加入下面两项配置,把依赖包打到jar里-->
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <includeSystemScope>true</includeSystemScope>
                </configuration>
            </plugin>
        </plugins>
    </build>

Dockerfile的统一内容

在src/main/docker目录下添加这个文件

FROM fabric8/java-jboss-openjdk8-jdk:1.4
COPY 你的jar名称.jar /deployments/app.jar
ENV URL="http://127.0.0.1:18082/manage/status"
EXPOSE 8082 18082

生成jar包

在根项目里的lifecycle->install,然后生成各个项目的jar文件,把对应的jar复制到对应的目录里

生成镜像

docker build ./src/main/docker -t maven-spring-b

原文链接:https://www.cnblogs.com/lori/p/11940027.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:eclipse搭建springboot的项目

下一篇:SpringBoot 对IBM MQ进行数据监听接收以及数据发送