gpt4 book ai didi

spring-boot - Dockerfile 来创建 Spring Boot 的镜像

转载 作者:行者123 更新时间:2023-12-03 05:31:52 24 4
gpt4 key购买 nike

我想为 Spring Boot 应用程序创建 Docker 镜像。它使用 gardle 作为构建工具。

在 bitbucket 存储库中,我可以看到放置了以下文件

    --> src
--> build.gradle
--> Dockerfile
--> gradlew
--> gradlew.bat

现在 Dockerfile 有以下内容
  FROM openjdk:8-jdk-alpine
VOLUME /tmp
ARG DEPENDENCY=target/dependency
COPY ${DEPENDENCY}/BOOT-INF/lib /app/lib
COPY ${DEPENDENCY}/META-INF /app/META-INF
COPY ${DEPENDENCY}/BOOT-INF/classes /app
EXPOSE 8080
ENTRYPOINT ["java","-cp","app:app/lib/*","eds.billnq"]

当我尝试使用 Dockerfile 创建图像时出现错误
    target/dependency/BOOT-INF library not found 
target/dependency/META-INF library not found

我的问题是为什么这里 docker 文件中没有 gradle 构建步骤?
还将在哪里创建目标/依赖项/?

最佳答案

why here there is no gradle build steps in docker file ?



它看起来像 Dockerfile期望在构建 Docker 镜像之前已经构建了应用程序(由 Gradle),并且生成的类文件和 jar 可以在 target/dependency 下的各个目录中使用.

Spring Boot Docker guide @WonChul Heo 在评论中提到如何使用 Gradle 构建 Docker 镜像,特别是使用插件 gradle.plugin.com.palantir.gradle.docker:gradle-docker .

Also where target/dependency/ will be created ?



我猜它们应该在您运行 Gradle 构建时创建,但如果不了解更多关于构建如何配置的信息,很难确定。

我建议您再次阅读该指南,并将其推荐的内容与您的代码库中的内容进行比较,尤其是 Gradle 构建定义。

归根结底,如果您从私有(private)代码仓库中提取代码并且无法弄清楚如何构建它,那么最好向致力于代码库的人寻求建议,而不是向 SO .

关于spring-boot - Dockerfile 来创建 Spring Boot 的镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58908903/

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