java 在Docker容器内构建maven项目

ryevplcw  于 2023-01-11  发布在  Java
关注(0)|答案(1)|浏览(214)

我在Docker容器中构建mvn项目时遇到了一些问题。每次我尝试使用下面的Docker文件构建时,我都会得到这个错误:

[10/10] COPY target/*.jar app.jar:
------
lstat /var/lib/docker/tmp/buildkit-mount9100795/target: no such file or directory

我当前的Dockerfile:

FROM maven:3.8.1-openjdk-17 as builder
COPY src /tmp/src/
COPY pom.xml /tmp/
WORKDIR /tmp/
RUN mvn clean install

FROM maven:3.8.1-openjdk-17
WORKDIR /tmp/app
COPY target/*.jar app.jar
EXPOSE 8081
ENTRYPOINT ["java","-jar","app.jar"]
acruukt9

acruukt91#

我已经找到了dockerfile和相对路径的正确配置。由于我已经将buider的WORKDIR设置为/tmp/,所以我的目标文件夹是在/tmp/target/生成的,因此使用---from=builder标记指定源文件,并更新路径,我能够成功地复制.jar文件
我当前的工作文件:

FROM maven:3.8.1-openjdk-17 as builder
COPY src /tmp/src/
COPY pom.xml /tmp/
WORKDIR /tmp/
RUN mvn clean install

FROM maven:3.8.1-openjdk-17
COPY --from=builder /tmp/target/*.jar app.jar
EXPOSE 8081
ENTRYPOINT ["java","-jar","app.jar"]

相关问题