解析docker妙用SpringBoot構(gòu)建微服務(wù)實(shí)戰(zhàn)記錄
它是啥?
Spring Boot 是 Spring 開源組織的子項(xiàng)目,是 Spring 組件一站式解決方案,主要是簡化了使用 Spring 的難度,簡省了繁重的配置,提供了各種啟動器,開發(fā)者能快速上手。
為啥用它?
五大優(yōu)點(diǎn):
1、起步依賴 官方為我們整合了大量的起步依賴,簡化了我們搭建項(xiàng)目的工作,同時(shí),起步依賴提供了可靠的依賴管理,降低了項(xiàng)目引入問題版本和依賴沖突的風(fēng)險(xiǎn)。
2、 自動配置 開啟組件掃描和自動配置。 通過exclude參數(shù)關(guān)閉特定 的自動配置。
3、 應(yīng)用監(jiān)控 Spring Boot 監(jiān)控核心是 spring-boot-starter-actuator 依賴,增加依賴后, Spring Boot 會默認(rèn)配置一些通用的監(jiān)控,比如 jvm 監(jiān)控、類加載、健康監(jiān)控等。Actuator插件是SpringBoot原生提供的一個(gè)服務(wù),可以通過暴露端點(diǎn)路由,用來輸出應(yīng)用中的諸多端點(diǎn)信息。
4、 獨(dú)立運(yùn)行 SpringBoot內(nèi)置了Tomcat容器,可以直接執(zhí)行 main 方法運(yùn)行。項(xiàng)目部署可以打成jar的文件在服務(wù)器上通過執(zhí)行java -jar 命令來運(yùn)行服務(wù)。
5、熱部署 項(xiàng)目開發(fā)過程中,常常會改動頁面數(shù)據(jù)或者修改數(shù)據(jù)結(jié)構(gòu),為了顯示改動效果,往往需要重啟應(yīng)用查看改變效果,其實(shí)就是重新編譯生成了新的 Class 文件,這個(gè)文件里記錄著和代碼等對應(yīng)的各種信息,然后 Class 文件將被虛擬機(jī)的 ClassLoader 加載。
而熱部署正是利用了這個(gè)特點(diǎn),它監(jiān)聽到如果有 Class 文件改動了,就會創(chuàng)建一個(gè)新的 ClaassLoader 進(jìn)行加載該文件,經(jīng)過一系列的過程,最終將結(jié)果呈現(xiàn)在我們眼前。
案例
1.開發(fā)springboot微服務(wù)
2.對springboot應(yīng)用程序進(jìn)行打包
一般是兩種格式的包,案例采用jar
war 過渡 tomcat
jar 主流 jdk
3.打包項(xiàng)目
aliyun-sdk-oss-2.6.1.jar
4.在服務(wù)器中創(chuàng)建Dockerfile目錄
mkdir /root/springboot
上傳jar包到此目錄,并載入Java環(huán)境鏡像openjdk /root/springboot
創(chuàng)建Dockerfile文件
vim Dockerfile
FROM openjdk:8-jre
WORKDIR /app
ADD aliyun-sdk-oss-2.6.1.jar app.jar
EXPOSE 8080
ENTRYPOINT [“java”,"-jar",“app.jar”]
5.構(gòu)建鏡像
docker build -t app1 .
6.運(yùn)行容器
docker run -d -p 8081:8080 --name registry1 app1 bash
查看容器:
到此這篇關(guān)于解析docker妙用SpringBoot構(gòu)建微服務(wù)實(shí)戰(zhàn)記錄的文章就介紹到這了,更多相關(guān)docker SpringBoot構(gòu)建微服務(wù)內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。