提问人:davebo92123 提问时间:11/16/2023 更新时间:11/17/2023 访问量:39
如何获取运行 docker 的 application.properties 中指定的配置文件
How to get config-file specified in application.properties running docker
问:
我有我的application.properties,我在其中指定了配置文件的路径。我需要在运行时读取此文件。
app.config = myApp/myConfig.conf
该文件位于我项目的根目录中。当我运行我的容器时,找不到我的配置文件。我的容器怎么可能通过我的application.properties中指定的路径找到我的配置文件?
我的dockerfile:
FROM eclipse-temurin:17.0.8.1_1-jre
COPY ./target/myApp.jar app.jar
ENTRYPOINT ["java", "-jar", "app.jar"]
构建映像:
docker build -t myApp:myApp .
运行 docker:
docker run -p 8080:80 --name myAppContainer idOfImage
执行docker run后,我遇到了找不到的错误myApp/myConfig.conf
答:
1赞
Ömer Sezer
11/17/2023
#1
在构建映像时,应将配置文件复制到映像中。myApp/myConfig.conf
示例1:如果您的文件结构:
Project Directory
-- Dockerfile
-- target
---- myApp.jar
-- myApp
---- myConfig.conf
Dockerfile(根据您的文件结构,复制的 .conf 文件路径会发生变化):
FROM eclipse-temurin:17.0.8.1_1-jre
COPY ./target/myApp.jar app.jar
COPY ./myApp/myConfig.conf ./myApp/myConfig.conf
ENTRYPOINT ["java", "-jar", "app.jar"]
示例2:如果您的文件结构:
Project Directory
-- Dockerfile
-- target
---- myApp.jar
---- myApp
------- myConfig.conf
Dockerfile(根据您的文件结构,复制的 .conf 文件路径会发生变化):
FROM eclipse-temurin:17.0.8.1_1-jre
COPY ./target/myApp.jar app.jar
COPY ./target/myApp/myConfig.conf ./myApp/myConfig.conf
ENTRYPOINT ["java", "-jar", "app.jar"]
评论