gpt4 book ai didi

maven - docker构建后缺少m2存储库

转载 作者:行者123 更新时间:2023-12-02 18:30:48 24 4
gpt4 key购买 nike

如果我运行docker build将maven依赖项下拉到.m2存储库中,则该镜像不会持久存在于镜像中。

因此,如果我随后尝试将tty放入正在运行的容器中,则~/.m2/repository目录将为空。或ii)如果我在第一个镜像之上构建另一个镜像,则必须再次下载这些部门。

我的Dockerfile的内容在这里。

FROM maven:3.5.0-jdk-8-alpine

RUN apk update \
&& apk add ca-certificates \
&& update-ca-certificates \
&& apk add openssl \
bash \
git

WORKDIR /app
COPY . /app

RUN mvn compile

我确定这是我不了解的Docker的一些简单细节。有人在那里有见识吗?

最佳答案

@khmarbaise是的,您是对的。我只需要在Dockerfile中指定一个VOLUME /root/.m2/repository条目即可。为了确定,我还删除了缓存的容器和卷。很遗憾,正如我期望的那样,存储库在那里。

所以我的Dockerfile现在看起来像这样。我没有完全了解 docker 卷。但这一切都说得通了。谢谢。

FROM maven:3.5.0-jdk-8-alpine

RUN apk update \
&& apk add ca-certificates \
&& update-ca-certificates \
&& apk add openssl \
bash \
git

WORKDIR /app
COPY . /app
VOLUME /root/.m2/repository

RUN mvn compile

关于maven - docker构建后缺少m2存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45399483/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com