#syntax=harbor.XXX.com/docker/dockerfile:experimental
# 第一行必须保留
# 使用 docker 的扩展功能 build 镜像
# ---- build 阶段,主要用于 build node 项目 ---- #
# 使用 jdk 8 build 为 builder
FROM harbor.XXX.com/base-images/maven:3-jdk-8-slim as builder
# 配置默认工作空间
WORKDIR /app
# copy pom.xml 文件
COPY ./pom.xml .
RUN --mount=type=cache,target=/root/.m2/repository \
mvn dependency:go-offline
# 复制所有文件到默认项目空间
# build 项目
COPY . .
RUN --mount=type=cache,target=/root/.m2/repository \
mvn dependency:purge-local-repository -DgroupId==com.tigerye && \
mvn -DskipTests clean package
RUN mv target/*.jar target/result.jar
# ---- 创建 nginx 镜像,为最终使用的镜像 ----#
FROM harbor.XXX.com/base-images/openjdk:8-slim-apollo as app
ARG APP_ID=XXX
ARG APOLLO_META=http://apollo-config-test.XXX.com:XXX
ENV APP_ID=$APP_ID \
APOLLO_META=$APOLLO_META
#copy builder (上一个阶段的容器) 的 /app/target/result.jar 目录到当前镜像
COPY --from=builder /app/target/result.jar $JAR_PATH
EXPOSE 8080
java项目docker 化
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 写在前言 1.本文的阅读前提是读者已经安装成功jenkins,并且已经通过做好的相关的基础配置,且可以通过jenk...
- 原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!原文链接地址:「实战篇」开源项目docker化运维部署-...
- 原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!原文链接地址:「实战篇」开源项目docker化运维部署-...
- 需要用到的工具分享:链接:https://pan.baidu.com/s/1AGAY0V0T402_GSBAHh8...
- 原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!原文链接地址:「实战篇」开源项目docker化运维部署-...