如何安装卷来存储我的.m2存储库,这样我就不必在每个版本上都下载Internet?
我的构建是一个多阶段构建:
FROM maven:3.5-jdk-8 as BUILD
COPY . /usr/src/app
RUN mvn --batch-mode -f /usr/src/app/pom.xml clean package
FROM openjdk:8-jdk
COPY --from=BUILD /usr/src/app/target /opt/target
WORKDIR /opt/target
CMD ["/bin/bash", "-c", "find -type f -name '*.jar' | xargs java -jar"]
答案 0 :(得分:9)
您可以使用Docker> 18.09和BuildKit来实现。您需要启用BuildKit:
export DOCKER_BUILDKIT=1
然后,您需要通过添加Dockerfile作为第一行来启用实验性dockerfile前端功能:
# syntax=docker/dockerfile:experimental
之后,您可以使用高速缓存装入调用RUN命令。缓存安装在构建期间保持持久:
RUN --mount=type=cache,target=/root/.m2 \
mvn --batch-mode -f /usr/src/app/pom.xml clean package