您好,登錄后才能下訂單哦!
這篇文章主要介紹了springboot動態(tài)注入配置與docker設(shè)置環(huán)境變量的方法是什么的相關(guān)知識,內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇springboot動態(tài)注入配置與docker設(shè)置環(huán)境變量的方法是什么文章都會有所收獲,下面我們一起來看看吧。
這是一個很簡單的問題,但是我不擅長記命令,只是知道實用jar -jar 啟動springboot項目的時候添加幾個參數(shù),具體的參數(shù)我是一個記不住,也不知道這些命令是怎么配置的,這里就簡單整理一下。
springboot的配置優(yōu)先級 默認(rèn)配置 <配置文件 <命令配置
#這里是數(shù)據(jù)庫配置 數(shù)據(jù)庫的連接地址 現(xiàn)在我把url設(shè)置為空然后打包jar spring: datasource: #數(shù)據(jù)源基本配置 username: root password: jishuzhai driver-class-name: com.mysql.cj.jdbc.Driver url: type: com.alibaba.druid.pool.DruidDataSource
java -jar brief-plus_oa.jar #嘗試啟動應(yīng)用 會報以下錯誤
#Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
這個-D 是增加了我對java執(zhí)行命令的認(rèn)識
java -jar -Dspring.datasource.url="jdbc:mysql://127.0.0.1:3306/brief_min?zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useUnicode=true&characterEncoding=utf-8" brief-plus_oa.jar #啟動項目成功 注意這里的spring.datasource.url 要和配置文件里面的字段一致
整個url字段全部注入現(xiàn)在太難輸入了,整個url只有ip地址是變化的這里可以簡化一下看下面配置: brief: mysql: host: #自定義的參數(shù) spring: datasource: #數(shù)據(jù)源基本配置 username: root password: jishuzhai driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://${brief.mysql.host}:3306/brief_min?zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useUnicode=true&characterEncoding=utf-8 type: com.alibaba.druid.pool.DruidDataSource 重新打包然后運行: java -jar -Dbrief.mysql.host=127.0.0.1 brief-plus_oa.jar #啟動成功
java -jar -Dspring.profiles.active=dev -DBRIEF.MYSQL.HOST=192.168.2.5 -DSPRING.REDIS.HOST=192.168.2.5 brief-plus_oa.jar
設(shè)置配置文件:端口,參數(shù)等
設(shè)置日志輸出
設(shè)置虛擬機設(shè)置
設(shè)置編碼
java -jar -Dserver.port=10000 brief-plus_oa.jar #設(shè)置端口
java -jar -DSPRING_PROFILES_ACTIVE=dev brief-plus_oa.jar #設(shè)置生效的配置文件為dev
java -jar -Dlogging.path=/Users/fuping/Desktop/log brief-plus_oa.jar #設(shè)置日志文件存儲目錄
java -jar -Dbrief.mysql.host=127.0.0.1 brief-plus_oa.jar & #啟動打印進(jìn)程id
java -jar -Dfile.encoding=utf-8 brief-plus_oa.jar #設(shè)置文件編碼 windows服務(wù)器啟動亂碼時使用
nohup java -jar brief-plus_oa.jar > log.txt 2>&1 & #后臺啟動 并且將啟動日志輸入到log.txt文件 并且打印進(jìn)程id
java -Xms256m -Xmx512m brief-plus_oa.jar #設(shè)置虛擬機內(nèi)存地址
注意 -D后面的參數(shù)名稱不區(qū)分大小寫
FROM openjdk:17 # 鏡像是從 openjdk:11-jdk-alpin 繼承而來的 VOLUME /root/tmp # 表示掛載了 /root/tmp 目錄到容器中 ADD build/libs/brief-plus_oa-0.0.1-SNAPSHOT.jar apprun.jar # 將bootJar 添加到鏡像中根目錄下 命令為 apprun.jar ENTRYPOINT ["java","-jar","/apprun.jar"] # ENTRYPOINT 在容器啟動后執(zhí)行 java 命令來運行程序 # 設(shè)置容器時間 ENV TZ=Asia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone EXPOSE 8099
sudo docker build -t brief_plus_ao:v1.0.0.1 -f ./Dockerfile .
3、運行鏡像注入env環(huán)境變量。 -e
sudo docker run -p 8090:8090 -e BRIEF.MYSQL.HOST=192.168.31.113 -e SPRING.REDIS.HOST=192.168.31.113 brief_plus_ao:v1.0.0.1
關(guān)于“springboot動態(tài)注入配置與docker設(shè)置環(huán)境變量的方法是什么”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“springboot動態(tài)注入配置與docker設(shè)置環(huán)境變量的方法是什么”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。