现象

在使用docker 启动spirng cloud时,其他几个项目都能正常在启动docker时使用

docker run -d -p 8080:8080 --name lkp-server lkp-server --spring.profiles.active=lkpdev

这种方式启动配置来读取响应的配置文件;但是其中有个项目在启动时却在指定配置文件时无法读取;但是在直接启动jar包时可以指定配置文件;那么就说明应该不是java程序打包没有把配置文件打到jar包里的原因;
进入已经启动的容器内部使用ps进行查看容器中启动的java进程:

可以看到这个项目在启动时是没有加载 --spring.profiles.active配置参数的;下面我来贴一个正常的启动后的程序

由此可见是一定是在构建docker镜像时哪个步骤出现了问题于是对比Dockerfile文件

对比Dockerfile

  • 启动正常的java程序的配置文件
FROM openjdk:8-jdk-alpine
RUN mkdir /app
ADD target/***.jar  /app/***.jar
WORKDIR /app
ENV JAVA_OPTS=""
ENTRYPOINT ["java","-Duser.timezone=GMT+08 -Djava.security.egd=file:/dev/./urandom -Dfile.encoding=utf-8","-jar","***.jar"]
  • 启动不正常的配置文件
FROM openjdk:8-jdk-alpine
RUN mkdir /app
ADD target/***.jar  /app/***.jar
WORKDIR /app
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Dfile.encoding=utf-8 -jar csizg-***.jar" ]
EXPOSE 8080

问题是出现在这 ENTRYPOINT 参数中 又指定了一下 $JAVA_OPTS 导致了无法在启动时读取到启动时加载的参数

docker启动无法指定配置文件相关推荐

  1. docker 启动时指定需要绑定的网卡_Docker容器网络-基础篇

    Docker的技术依赖于Linux内核的虚拟化技术的发展,Docker使用到的网络技术有Network Namespace.Veth设备对.Iptables/Netfilter.网桥.路由等.接下来, ...

  2. docker启动容器指定端口和随机分配端口

    例子 我要启动tomcat docker run -d -P tomcat 大些-P表示随机分配端口 docker run -d -p 8086:8080  tomcat 小些-p 表示指定端口,主机 ...

  3. docker启动容器指定主机名,网络和ip地址

    docker run --name aa --hostname kafka_node -p 2181:2181 -v /home/htht/kafka/logs:/home/kafka/logs -v ...

  4. Docker启动SpringBoot项目传递参数

    SpringBoot项目 我们需要在启动项目时传递参数 # 方式1 java -Dxxx=xx zzz=zzz xxx.jar # 方式2 java xxx.jar --xxx=xxx --zzz=z ...

  5. redis指定配置文件启动_redis基础知识整理-安装

    1.安装wget,稍后使用wget命令下载redis源码 yum install wget -y 2.在根目录创建 redis 目录并进入到redis目录下 mkdir /redis cd /redi ...

  6. redis指定配置文件启动_Redis【简介amp;安装篇】

    1 Redis简介 1.1 Redis是什么 Redis是一个开源的,使用ANSI C 编写的,高性能Key-Value的NoSQL数据库. 1.2 Redis特点 i. 基于内存. ii. 可持久化 ...

  7. Docker容器无法启动,里面的配置文件如何修改

    背景: 当修改一个容器, 如mysql里的配置文件/etc/mysql/my.cnf , 修改完成后重启mysql 容器, 使用docker ps -a 查看容器,显示容器EXIT(1), 没有正常启 ...

  8. linux启动jar服务命令,微服务编译、启动jar命令指定配置文件

    在部署项目的时候会有dev.test.uat.prod等环境配置文件 有两种方法去指定配置文件: 1.在启动服务的时候指定: 2.编译打包的时候指定,如果此时已经指定则启动的时候就不用再指定了. 1. ...

  9. nginx 指定配置文件 启动 重启

    1:验证配置文件 /usr/local/nginx/sbin/nginx -tc /usr/local/nginx/conf/nginx.conf /usr/local/nginx/sbin/ngin ...

最新文章

  1. [CTSC2018]混合果汁 二分 套 主席树上二分
  2. 《强化学习周刊》第13期:强化学习应用之金融
  3. 【模拟】【codeforces】451B Sort the Array
  4. c语言读取exe的pe标记,PE文件信息读取程序(1.关键函数部分)
  5. Java JDBC数据库 之 DBUtil 封装类
  6. 我看百度和Google
  7. twisted.internet.error.TimeoutError错误的解决方法
  8. [译]GC专家系列2:Java 垃圾回收的监控
  9. halcon2D Metrology测量算子,卡尺测量算子,持续更新
  10. IDEA快速 实现 SpringMVC 整合xfire 发布 WebService 服务
  11. 3D 机器视觉 02 - FPGA生成N位元格雷码
  12. springMVC实现增删改查
  13. CString类常用方法(转载)
  14. 进程同步与互斥:POSIX有名信号量
  15. 2021-07-01事件绑定
  16. Python编程之二维码生成
  17. Lomboz 3.3
  18. WordPress模板制作教程
  19. 多图像 并行 浏览 放大 对比 MulimgViewer win10 ubuntu 多图片 多张图片
  20. 【常用模块】电容触摸按键模块(原理讲解、STM32实例操作)

热门文章

  1. 忍者必须死3突然服务器维修,《忍者必须死3》3月25日停服维护公告
  2. Autodesk的免费的CAD软件试用版下载地址
  3. 智慧边缘计算安全综述
  4. 人脸识别 年龄 matlab,基于年龄变化的人脸识别
  5. 湖北计算机考试条列,湖北省计算机考试大纲及考生须知
  6. 中英文翻译功能 php,PHP微信开发之翻译功能
  7. 网络爬虫学习(二) selenium
  8. 几种颜色单位设置(颜色设置)
  9. github(desktop)使用教程(三) 【保姆级】{desktop tutorial repository,创建分支,编辑文件,保存修改,commit,publish to github}
  10. chromedriver 下载与安装方法[转]