【问题标题】:Error executing docker file in spring boot maven project在 Spring Boot Maven 项目中执行 Docker 文件时出错
【发布时间】:2020-08-13 22:03:53
【问题描述】:

docker 文件中面临的问题(spring boot maven 项目)。运行 docker 文件时,出现错误“命令 '/bin/sh -c mvn -f pom.xml clean package' 返回非零代码:1”。但是,如果我直接执行命令'mvn -f pom.xml clean package',我不会收到任何错误。

FROM maven:3.6.1-jdk-8-slim AS build
RUN mkdir -p /workspace
WORKDIR /workspace
COPY pom.xml /workspace
COPY src /workspace/src
RUN mvn -f pom.xml clean package

FROM openjdk:8-alpine
COPY --from=build /workspace/target/*.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","app.jar"]

请帮忙。

【问题讨论】:

    标签: spring-boot maven dockerfile


    【解决方案1】:

    您可以使用实验性功能缓存来加快构建过程

    # syntax=docker/dockerfile:1.0-experimental
    

    你不需要运行 mkdir

    RUN mkdir -p /workspace
    

    只要工作目录就足够了

    WORKDIR /workspace
    

    你可以复制文件夹

    COPY . .
    

    并添加 .dockerignore 文件以防止不构建相关文件和文件夹

    RUN --mount=type=cache,target=/root/.m2/repository mvn -e -B clean package - 
    Dmaven.test.skip=true
    

    改变

    ENTRYPOINT ["java","-jar","app.jar"] 
    

    CMD ["java","-Djava.security.egd=file:/dev/./urandom", "-jar", "/app.jar"]
    

    maven 输出将有助于检测到底是什么错误。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-01
    • 2017-07-15
    • 2020-04-17
    • 2023-03-30
    • 1970-01-01
    • 2021-09-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多