【发布时间】:2021-05-11 15:33:44
【问题描述】:
我正在尝试构建一个高效的 Docker 映像,该映像利用 Docker 的映像分层来减少上传到存储库或从存储库下载所需的持续时间和所需带宽。有没有办法使用Gradle 构建工具来分离我的编译代码和依赖项(外部库)?
我当前的Dockerfile 将fat jar 复制到容器中,而 jar 文件中最重要的部分是在版本之间不会更改的库。
我当前的 Dockerfile:
FROM openjdk:11-jre-slim
VOLUME /tmp
WORKDIR /app
# Add the application's jar to the container
COPY /build/libs/app-*.jar app.jar
# Run the jar file
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","app.jar"]
编辑 1:我试图在不使用任何插件的情况下实现这个目标(如果可能的话)。
【问题讨论】: