Maven docker cache dependencies
我正在尝试使用 Docker 来自动化 maven 构建。我想要构建的项目需要近20分钟才能下载所有依赖项,因此我尝试构建一个将缓存这些依赖项的docker映像,但它似乎没有保存它。我的 Dockerfile 是
FROM maven:alpine
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
ADD pom.xml /usr/src/app
RUN mvn dependency:go-offline
映像将生成,并且会下载所有内容。但是,生成的映像与基本映像的大小相同,因此它似乎没有缓存映像中的依赖项。当我尝试使用图像时,它会经历整整20分钟的重新下载所有内容。maven:alpine
mvn compile
是否可以构建一个缓存我的依赖项的 maven 映像,以便它们不必在我每次使用该映像执行生成时都下载?
我正在运行以下命令:
docker build -t my-maven .
docker run -it --rm --name my-maven-project -v "$PWD":/usr/src/mymaven -w /usr/src/mymaven my-maven mvn compile
我的理解是,在 docker 构建过程中执行的任何操作都会成为生成的映像的一部分。RUN