springboot项目打jar制作成镜像并指定配置文件位置方式

本文主要是介绍springboot项目打jar制作成镜像并指定配置文件位置方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误...

一、上传jar到服务器

springboot项目打jar制作成镜像并指定配置文件位置方式

二、编写Dockerfile

#基于Java8
FROM java:8
 
#创建一个目录存放jar包(在容器里面创建目录)
RUN mkdir -p /huanglei/jar/demo/config /huanglei/jar/demo/logs
 
#复制jar包以及相关配置文件(复制jar包到UGOhuJCe容器的根目录)
COPY demo-0.0.1-SNAPSHOT.jar /demo-0.0.1-SNAPSHOT.jar
 
#添加进UGOhuJCe入docker容器后的目录
WORKDIR /huanglei/jar/demo
 
#配置项目端口
CMD ["--编程server.port=7001"]
 
#对外暴露的端口号
EXPOSE 7001
 
#修改文件的创建修改时间
RUN bash -c 'touch /demo-0.0.1-SNAPSHOT.jar'
 
#运行脚本,启动springboot项目,这里我们指定加载配置文件的位置,并且通过数据卷挂载同步到容器中python
ENTRYPOINT ["java","-jar","/demo-0.0.1-SNAPSHOT.jar","-Dspring.config.location=/huanglei/jar/demo/config/application.properties php--logging.config=/huanglei/jar/demo/logs/logback.XML > /huanglei/jar/demo/logs/demo.log 2>&1 &"]

三、新建对应配置文件所存放的数据卷目录

springboot项目打jar制作成镜像并指定配置文件位置方式

四、将配置文件上传到数据卷目录下

springboot项目打jar制作成镜像并指定配置文件位置方式

五、运行命令生成我们的项目镜像

springboot项目打jar制作成镜像并指定配置文件位置方式

六、运行容器

docker run -dit --name demo -p 7001:7001 \
-v /huanglei/jar/demo/config:/huanglei/jar/demo/config \
-v /huanglei/jar/demo/logs:/huanglei/jar/demo/logs \
--privileged=true \
demo:v1.0

七、查看镜像和容器

  • 镜像

springboot项目打jar制作成镜像并指定配置文件位置方式

  • 容器

springboot项目打jar制作成镜像并指定配置文件位置方式

  • 日志

springboot项目打jar制作成镜像并指定配置文件位置方式

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持China编程(www.chinasem.cn)。

这篇关于springboot项目打jar制作成镜像并指定配置文件位置方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1155193

相关文章

Spring Boot项目如何使用外部application.yml配置文件启动JAR包

《SpringBoot项目如何使用外部application.yml配置文件启动JAR包》文章介绍了SpringBoot项目通过指定外部application.yml配置文件启动JAR包的方法,包括... 目录Spring Boot项目中使用外部application.yml配置文件启动JAR包一、基本原理

SpringBoot加载profile全面解析

《SpringBoot加载profile全面解析》SpringBoot的Profile机制通过多配置文件和注解实现环境隔离,支持开发、测试、生产等不同环境的灵活配置切换,无需修改代码,关键点包括配置文... 目录题目详细答案什么是 Profile配置 Profile使用application-{profil

MyBatis流式查询两种实现方式

《MyBatis流式查询两种实现方式》本文详解MyBatis流式查询,通过ResultHandler和Cursor实现边读边处理,避免内存溢出,ResultHandler逐条回调,Cursor支持迭代... 目录MyBATis 流式查询详解:ResultHandler 与 Cursor1. 什么是流式查询?

Java中InputStream重复使用问题的几种解决方案

《Java中InputStream重复使用问题的几种解决方案》在Java开发中,InputStream是用于读取字节流的类,在许多场景下,我们可能需要重复读取InputStream中的数据,这篇文章主... 目录前言1. 使用mark()和reset()方法(适用于支持标记的流)2. 将流内容缓存到字节数组

Java慢查询排查与性能调优完整实战指南

《Java慢查询排查与性能调优完整实战指南》Java调优是一个广泛的话题,它涵盖了代码优化、内存管理、并发处理等多个方面,:本文主要介绍Java慢查询排查与性能调优的相关资料,文中通过代码介绍的非... 目录1. 事故全景:从告警到定位1.1 事故时间线1.2 关键指标异常1.3 排查工具链2. 深度剖析:

Springboot项目登录校验功能实现

《Springboot项目登录校验功能实现》本文介绍了Web登录校验的重要性,对比了Cookie、Session和JWT三种会话技术,分析其优缺点,并讲解了过滤器与拦截器的统一拦截方案,推荐使用JWT... 目录引言一、登录校验的基本概念二、HTTP协议的无状态性三、会话跟android踪技术1. Cook

java实现多数据源切换方式

《java实现多数据源切换方式》本文介绍实现多数据源切换的四步方法:导入依赖、配置文件、启动类注解、使用@DS标记mapper和服务层,通过注解实现数据源动态切换,适用于实际开发中的多数据源场景... 目录一、导入依赖二、配置文件三、在启动类上配置四、在需要切换数据源的类上、方法上使用@DS注解结论一、导入

创建springBoot模块没有目录结构的解决方案

《创建springBoot模块没有目录结构的解决方案》2023版IntelliJIDEA创建模块时可能出现目录结构识别错误,导致文件显示异常,解决方法为选择模块后点击确认,重新校准项目结构设置,确保源... 目录创建spChina编程ringBoot模块没有目录结构解决方案总结创建springBoot模块没有目录

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

Linux升级或者切换python版本实现方式

《Linux升级或者切换python版本实现方式》本文介绍在Ubuntu/Debian系统升级Python至3.11或更高版本的方法,通过查看版本列表并选择新版本进行全局修改,需注意自动与手动模式的选... 目录升级系统python版本 (适用于全局修改)对于Ubuntu/Debian系统安装后,验证Pyt