真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

SpringBoot應(yīng)用Docker化的示例分析

這篇文章給大家分享的是有關(guān)Spring Boot應(yīng)用Docker化的示例分析的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)建站主營安陽網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都APP應(yīng)用開發(fā),安陽h5成都微信小程序搭建,安陽網(wǎng)站營銷推廣歡迎安陽等地區(qū)企業(yè)咨詢

概述

Spring Boot簡化了Spring應(yīng)用的開發(fā)過程,遵循約定優(yōu)先配置的原則提供了各類開箱即用(out-of-the-box)的框架配置。另一方面,Spring Boot還具備將代碼直接構(gòu)建為可執(zhí)行jar包的能力,這個(gè)jar包是一個(gè)可以獨(dú)立運(yùn)行的部署單元?;谝陨咸匦?,現(xiàn)在普遍認(rèn)為Spring Boot提供了一種快速構(gòu)造微服務(wù)(Micro-Service)的能力。

當(dāng)下web服務(wù)端開發(fā)中最火的名詞中絕對有微服務(wù)的一席之地,其也成為當(dāng)下互聯(lián)網(wǎng)后端服務(wù)架構(gòu)演進(jìn)歷程中最閃亮的技術(shù)之一。微服務(wù)的基本思想在于考慮圍繞著業(yè)務(wù)領(lǐng)域組件來創(chuàng)建應(yīng)用,這些應(yīng)用可獨(dú)立地進(jìn)行開發(fā)、管理和加速。在分散的組件中使用微服務(wù)云架構(gòu)和平臺,使部署、管理和服務(wù)功能交付變得更加簡單。既然服務(wù)被分割和微小化了,我們很容易想到如果將其和docker結(jié)合,讓docker承載著一個(gè)個(gè)的微服務(wù)運(yùn)行,如此一來將會(huì)讓服務(wù)間耦合度降低,部署簡潔,同時(shí)系統(tǒng)的架構(gòu)也更加清晰,便于長期演進(jìn)。

創(chuàng)建基于maven的spring bt項(xiàng)目

pom.xml中加依賴:


 org.springframework.boot
 spring-boot-starter-parent
 2.0.0.RELEASE


  
  org.springframework.boot
  spring-boot-starter-web
 
 
  org.springframework.boot
  spring-boot-starter-test
  test
 

我們只需要在啟動(dòng)類中添加一個(gè)簡單的restful接口就行了,為了后續(xù)瀏覽器能驗(yàn)證一下,訪問/hello接口,能向?yàn)g覽器返回一個(gè) Hello Docker!的問好!

@RestController
public class DockerDemoSpringApplication {
 public static void main(String[] args) {
  SpringApplication.run(DockerDemoSpringApplication.class, args);
 }

 @RequestMapping("/hello")
 public String hello(){
  return "Hello! Docker!”;
 }
}

編寫Dockerfile

我們在Spring Bt項(xiàng)目的根目錄下建立Dockerfile,用起來完成Docker鏡像構(gòu)建的編排:

FROM maven:3.3.3

ADD pom.xml /tmp/build/

RUN cd /tmp/build && mvn -q dependency:resolve

ADD src /tmp/build/src
  #構(gòu)建應(yīng)用

RUN cd /tmp/build && mvn -q -DskipTests=true package \
  #拷貝編譯結(jié)果到指定目錄
  && mv target/*.jar /app.jar \
  #清理編譯痕跡
  && cd / && rm -rf /tmp/build

VOLUME /tmp
EXPOSE 8080
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar”]

進(jìn)入Docker的世界

  • 0x01. 在Spring項(xiàng)目根目錄下根據(jù)Dockerfile來生成docker鏡像
     docker build -t springindocker .

  • 0x02. 從剛創(chuàng)建的鏡像來啟動(dòng)容器
     docker run -d -p 8080:8080 springindocker

  • 0x03. 打開瀏覽器,或者使用 curl 訪問http://127.0.0.1:8080就可以看到web服務(wù)器里返回的Hello Docker!!!問好的字符了

至此就說明你成功將一個(gè)基于 Spring Boot 的應(yīng)用 Docker 化了。

本文雖然只是以一個(gè)Demo,但一個(gè)大型的web項(xiàng)目無非也就是由諸多這種Rest服務(wù),外加各種基礎(chǔ)設(shè)施、數(shù)據(jù)庫、通信、中間件以及調(diào)度來構(gòu)成,每個(gè)子元素的開發(fā)也依然遵循這里的基本流程。

感謝各位的閱讀!關(guān)于“Spring Boot應(yīng)用Docker化的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!


新聞標(biāo)題:SpringBoot應(yīng)用Docker化的示例分析
分享地址:http://weahome.cn/article/gcjiso.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部