当前位置:   article > 正文

Dockerfile部署Java项目挂载使用外部配置文件_java项目外部挂载配置

java项目外部挂载配置

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.properties
  • 1
  • 2

4.最终配置文件

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.egd=file:/dev/./urandom -jar /app.jar
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/284207
推荐阅读
相关标签
  

闽ICP备14008679号