云南建设网站澜沧项目,外贸公司用的采购储运财务软件,响应式网站项目,迈步者seoDockerfile部署Java项目挂载使用外部配置文件 技术博客 http://idea.coderyj.com/ 需求是由于java项目使用的是nacos 而且每次部署nacos服务器ip不一样导致要重新打包,想引入外部配置文件进行打包 1.需求是由于java项目使用的是nacos 而且每次部署nacos服务器ip不一样导致要重新… Dockerfile部署Java项目挂载使用外部配置文件 技术博客 http://idea.coderyj.com/ 需求是由于java项目使用的是nacos 而且每次部署nacos服务器ip不一样导致要重新打包,想引入外部配置文件进行打包 1.需求是由于java项目使用的是nacos 而且每次部署nacos服务器ip不一样导致要重新打包,想引入外部配置文件进行打包 解决方案 SpringBoot配置文件的加载路径优先级 在讲解Docker运行Java项目挂载使用外部配置文件之前需要了解SpringBoot的配置文件加载路径优先级~ 优先级(从高到低): 工程根目录:./config/ 工程根目录./ classpath:/config/ classpath:/ 2.当Springboot打成JAR包不包含配置文件读取外部配置文件application.properties时可以选择
1.把application.properties放在在项目名.jar的同级目录下。 2.在项目名.jar同级目录创建一个config文件夹把application.properties放进去。
3.项⽬使⽤容器内tmp⽬录下的application.properties配置⽂件
FROM java:8-alpine
ENTRYPOINT java -jar /tmp/app.jar --spring.config.additional-location/tmp/application.properties4.最终配置文件
FROM openjdk:8
# 将当前目录下的*.jar添加到镜像中去并且命名为app.jar
ADD ./track-web-exe.jar app.jar
# 开放tcp端口
EXPOSE 8182/tcp
ENV LANG C.UTF-8# copy 修改启动配置文件 以下2种方法均可以
# COPY ./bootstrap.yml ./config/bootstrap.yml
COPY ./bootstrap.yml ./bootstrap.yml# 镜像启动的时候执行这个命令
CMD exec java ${JAVA_OPTS} -Djava.security.egdfile:/dev/./urandom -jar /app.jar