springboot之docker启动参数传递
这几天有网友问,如何在使用docker的情况下传递spring.profiles.active=test,也就是说springboot切换配置文件。以往我们直接通过java启动jar的时候,直接跟上--spring.profiles.active=test或者利用jvm参数-Dspring.profiles.active=test来传递。我写一些命令吧。
非docker下springboot切换配置文件
java -jar test.jar --spring.profiles.active=test #第一种情况切换配置文件
java -Dspring.profiles.active=test -jar test.jar #第二种情况切换配置文件
有朋友会疑惑,通过jvm参数怎么可以切换呢,其实springboot是支持的哦。
docker下springboot切换配置文件
docker封装了springboot后切换会多一些步骤,其实也不是很难。笔者找了网上好多文章,并没有看到通过com.spotify:docker-maven-plugin这个docker打包插件实现的环境变量传递参数,也可能是太简单了,没人写,但是我看到好多人需要,我还是写一下吧。但是网上有通过Dockerfile实现的Env变量传递的。下面我贴出pom中的打包插件代码:
请注意env节点和entryPoint的变化
com.spotifydocker-maven-plugin0.4.11pumelo/${project.artifactId}-${version}frolvlad/alpine-oraclejdk8:slim""[ "sh", "-c", "java $JAVA_OPTS -jar /${project.build.finalName}.jar" ]/${project.build.directory}${project.build.finalName}.jar
测试
从新打包镜像后,运行
docker run -e JAVA_OPTS='-Xms128m -Xmx256m -Dspring.profiles.active=prod' -it pumelo/test-1.0.0 /bin/bash
这样就可以通过jvm参数来切换springboot的配置文件啦。
感谢各位看官捧场。
springboot之docker启动参数传递的更多相关文章
- 【Devops】【docker】【CI/CD】2.docker启动jenkins环境+安装必要的插件
[注意:]jenkins的docker镜像,需要从官网进入直接获取,其他地方获取到的docker镜像,可能因为Jenkins版本过低,导致后续插件安装失败等问题!!! ================ ...
- 【docker】centOS7上部署的mysql和spring boot服务,要求,mysql的时间、java程序服务的时间和宿主机的时间完全保持一致【修改mysql时区,临时和永久】【修改spring boot配置文件时区】【修改docker启动spring boot实例程序时区】
要求:centOS7上部署的mysql和spring boot服务,要求,mysql的时间.java程序服务的时间和宿主机的时间完全保持一致: ============================ ...
- SpringBoot 部署 docker 打包镜像
SpringBoot 部署 docker 打包镜像 环境: 1.代码编写工具:IDEA 2.打包:maven 3.docker 4.linux 7.JDK1.8 8.Xshell 9.Xftp 第一步 ...
- SpringBoot使用Docker快速部署项目
1.简介 建议阅读本文最好对Dokcer有一些了解 首先我们先了解一下Docker是什么 Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口.它是目前最流行的 Linux 容器 ...
- springboot与docker整合
一.springboot与docker整合 a.创建Dockerfile FROM java MAINTAINER "Wing"<1561815137@qq.com> ...
- SpringBoot是如何启动的?
本文是通过查看SpringBoot源码整理出来的SpringBoot大致启动流程,整体大方向是以简单为出发点,不说太多复杂的东西,内部实现细节本文不深扣因为每个人的思路.理解都不一样,我个人看的理解跟 ...
- 基于vue+springboot+docker网站搭建【七】制作后端spring-boot的docker镜像部署
制作spring-boot的docker镜像并部署 一.下载后端项目:https://github.com/macrozheng/mall 二.修改mall-admin项目的配置文件 修改applic ...
- springboot之docker化
1.Docker安装 本人是centos7系统,安装也是按照官方文档进行安装.https://docs.docker.com/install/linux/docker-ce/centos/ ,即 1. ...
- IDEA部署Spring-boot到Docker容器
一.准备工作 idea安装Docker插件 centos7系统安装docker 二.打开docker远程端口 1. 编辑docker.service文件 vim /usr/lib/systemd/sy ...
随机推荐
- jdbc工具类1.0
package cn.zhouzhou; import java.sql.Connection; import java.sql.Driver; import java.sql.DriverManag ...
- Servlet3.0上传
1.上传对表单限制 *method=post *Enctype=multipart/form-data,它的默认值是:application/x-www-form-urlencoded 表单中需要添加 ...
- MySQL 5.7 关闭严格模式
If your app was written for older versions of MySQL and is not compatible with strict SQL mode in My ...
- vue 使用技巧总结 18.11
前言: 在大概学完 vue 整体框架后,有幸接触到花裤衩大神写的 vue-elementUI-admin 模板框架,把这个模板框架当作 demo,跟着 code 一遍,最大的收获是在以逻辑简单的模板熟 ...
- NPOI 上传Excel功能(二)
3.上传文件,写入log using DC.BE.Business.SYS; using DC.BE.Entity.ERP; using DC.BE.Entity.SAS; using DC.BE.E ...
- No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK问题解决
Maven构建项目报错: 解决办法: 1.eclipse菜单 - Window - Preferences- Java - Installed JREs 将配置的JRE定位到JDK,例如JRE ho ...
- 学习 Civil 3D二次开发从哪儿开始?
1.1 从哪儿开始 对于多数的工程设计人员,不完全具备上节所述的各种条件.对于Civil 3D的应用可能比较熟悉:但对于计算机语言,只限于上学时所学的一点基础知识,步入工作岗位后与计算机语言基本无缘: ...
- winserver 2008 R2服务器安装IIS
winserver 2008 R2 IIS7 安装IIS 打开服务器管理器 选择“角色”,右击添加角色 点击“下一步” 勾选”Web服务器(IIS)“,点击”下一步“ 勾选”常见Http功能.应用程序 ...
- P1308 统计单词数
P1308 题目描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数. 现在,请你编程实现这一功能,具体要求是:给定一个单词,请 ...
- DRF 分页组件
Django Rest Framework 分页组件 DRF的分页 为什么要使用分页 其实这个不说大家都知道,大家写项目的时候也是一定会用的, 我们数据库有几千万条数据,这些数据需要展示,我们不可能直 ...