Maven构建Docker镜像

简介: Maven构建Docker镜像


  1. 在项目的pom.xml文件中添加Docker Maven插件
<plugin>  
    <groupId>com.spotify</groupId>  
    <artifactId>dockerfile-maven-plugin</artifactId>  
    <version>1.4.13</version>  
    <configuration>  
        <repository>${docker.image.prefix}/${project.artifactId}</repository>  
        <buildArgs>  
            <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>  
        </buildArgs>  
    </configuration>  
</plugin>
<plugin>
       <groupId>com.spotify</groupId>
       <artifactId>dockerfile-maven-plugin</artifactId>
       <version>1.4.13</version>
       <executions>
           <execution>
               <id>build_image</id>
               <phase>package</phase>
               <goals>
                   <!--如果package时不想用docker打包,就注释掉这个goal -->
                   <goal>build</goal>
                   <goal>push</goal>
               </goals>
           </execution>
       </executions>
       <configuration>
           <contextDirectory>${project.basedir}</contextDirectory>
           <useMavenSettingsForAuth>true</useMavenSettingsForAuth>
           <repository>${docker.registry.url}/${docker.namespace}/${project.artifactId}</repository>
           <tag>${project.version}</tag>
           <buildArgs>
               <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
           </buildArgs>
       </configuration>
   </plugin>
  1. 在Dockerfile中定义构建镜像的步骤
FROM openjdk:8-jdk-alpine  
VOLUME /tmp  
ARG JAR_FILE  
COPY ${JAR_FILE} app.jar  
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
  1. 构建Docker镜像
mvn clean package dockerfile:build -DskipTests


相关文章
|
10月前
|
人工智能 前端开发 Docker
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
在 AI 智能体开发中,开发者常面临本地调试与云端部署的矛盾。本文介绍如何通过 Docker Compose 与 Docker Offload 解决这一难题,实现从本地快速迭代到云端高效扩容的全流程。内容涵盖多服务协同、容器化配置、GPU 支持及实战案例,助你构建高效、一致的 AI 智能体开发环境。
893 2
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
|
9月前
|
Java 项目管理 Maven
Maven项目管理与构建自动化完全指南
Maven彻底改变了Java项目管理方式,通过POM模型、依赖管理和标准化构建流程,大幅提升开发效率。本文深入解析其核心概念、多模块管理、私服搭建及与Spring Boot、Docker等现代技术栈的集成实践,助力开发者实现高效、规范的项目构建与团队协作。
1319 156
Maven项目管理与构建自动化完全指南
|
10月前
|
缓存 安全 Linux
优化Docker镜像大小的多阶段构建实践
优化Docker镜像大小的多阶段构建实践
563 99
|
10月前
|
缓存 Docker 容器
优化Docker镜像大小的五个实用技巧
优化Docker镜像大小的五个实用技巧
882 98
|
9月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
916 6
|
10月前
|
Java Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
392 8
|
Java Linux 程序员
Docker与Jib(maven插件版)实战
实战Jib的maven插件,将java应用构建成docker,并且推送到本地镜像仓库或者hub.docker.com
1033 0
Docker与Jib(maven插件版)实战
|
网络协议 安全 Java
【CI/CD技术专题】「Docker实战系列」使用Maven插件构建Docker镜像的方法
【CI/CD技术专题】「Docker实战系列」使用Maven插件构建Docker镜像的方法
726 0
【CI/CD技术专题】「Docker实战系列」使用Maven插件构建Docker镜像的方法
|
Docker 容器
Docker-Maven插件
Docker-Maven插件
457 0
Docker-Maven 插件的坑
Docker-Maven 插件的坑
398 0