婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 使用Docker部署Spring Boot的實現(xiàn)方法

使用Docker部署Spring Boot的實現(xiàn)方法

熱門標(biāo)簽:靈圖uu電子寵物店地圖標(biāo)注 地圖標(biāo)注黃河的位置 地圖標(biāo)注如何改成微信號 虛假地圖標(biāo)注 山東企業(yè)外呼系統(tǒng)公司 承德地圖標(biāo)注公司 百度地圖標(biāo)注公司位置要多少錢 400電話號碼辦理多少錢 濮陽好的聯(lián)通400電話申請

Docker 技術(shù)發(fā)展為微服務(wù)落地提供了更加便利的環(huán)境,使用 Docker 部署 Spring Boot 其實非常簡單,這篇文章我們就來簡單學(xué)習(xí)下。

首先構(gòu)建一個簡單的 Spring Boot 項目,然后給項目添加 Docker 支持,最后對項目進行部署。

一個簡單 Spring Boot 項目

在 pom.xml 中 ,使用 Spring Boot 2.0 相關(guān)依賴

<parent>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-parent</artifactId>
  <version>2.0.0.RELEASE</version>
</parent>

添加 web 和測試依賴

<dependencies>
   <dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
  </dependency>
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
  </dependency>
</dependencies>

創(chuàng)建一個 DockerController,在其中有一個index()方法,訪問時返回:Hello Docker!

@RestController
public class DockerController {
  
  @RequestMapping("/")
  public String index() {
    return "Hello Docker!";
  }
}

啟動類

@SpringBootApplication
public class DockerApplication {

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

添加完畢后啟動項目,啟動成功后瀏覽器放問:http://localhost:8080/,頁面返回:Hello Docker!,說明 Spring Boot 項目配置正常。

Spring Boot 項目添加 Docker 支持

在 pom.xml-properties 中添加 Docker 鏡像名稱

<properties>
  <docker.image.prefix>springboot</docker.image.prefix>
</properties>

plugins 中添加 Docker 構(gòu)建插件:

<build>
  <plugins>
    <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>
    <!-- Docker maven plugin -->
    <plugin>
      <groupId>com.spotify</groupId>
      <artifactId>docker-maven-plugin</artifactId>
      <version>1.0.0</version>
      <configuration>
        <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
        <dockerDirectory>src/main/docker</dockerDirectory>
        <resources>
          <resource>
            <targetPath>/</targetPath>
            <directory>${project.build.directory}</directory>
            <include>${project.build.finalName}.jar</include>
          </resource>
        </resources>
      </configuration>
    </plugin>
    <!-- Docker maven plugin -->
  </plugins>
</build>

在目錄src/main/docker下創(chuàng)建 Dockerfile 文件,Dockerfile 文件用來說明如何來構(gòu)建鏡像。

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD spring-boot-docker-1.0.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

這個 Dockerfile 文件很簡單,構(gòu)建 Jdk 基礎(chǔ)環(huán)境,添加 Spring Boot Jar 到鏡像中,簡單解釋一下:

  • FROM ,表示使用 Jdk8 環(huán)境 為基礎(chǔ)鏡像,如果鏡像不是本地的會從 DockerHub 進行下載
  • VOLUME ,VOLUME 指向了一個/tmp的目錄,由于 Spring Boot 使用內(nèi)置的Tomcat容器,Tomcat 默認(rèn)使用/tmp作為工作目錄。這個命令的效果是:在宿主機的/var/lib/docker目錄下創(chuàng)建一個臨時文件并把它鏈接到容器中的/tmp目錄
  • ADD ,拷貝文件并且重命名
  • ENTRYPOINT ,為了縮短 Tomcat 的啟動時間,添加java.security.egd的系統(tǒng)屬性指向/dev/urandom作為 ENTRYPOINT

這樣 Spring Boot 項目添加 Docker 依賴就完成了。

構(gòu)建打包環(huán)境

我們需要有一個 Docker 環(huán)境來打包 Spring Boot 項目,在 Windows 搭建 Docker 環(huán)境很麻煩,因此我這里以 Centos 7 為例。

安裝 Docker 環(huán)境

安裝

yum install docker

安裝完成后,使用下面的命令來啟動 docker 服務(wù),并將其設(shè)置為開機啟動:

service docker start
chkconfig docker on

#LCTT 譯注:此處采用了舊式的 sysv 語法,如采用CentOS 7中支持的新式 systemd 語法,如下:
systemctl start docker.service
systemctl enable docker.service

使用Docker 中國加速器

vi /etc/docker/daemon.json

#添加后:
{
  "registry-mirrors": ["https://registry.docker-cn.com"],
  "live-restore": true
}

重新啟動docker

systemctl restart docker

輸入docker version 返回版本信息則安裝正常。

安裝JDK

yum -y install java-1.8.0-openjdk*

配置環(huán)境變量 打開 vim /etc/profile 添加一下內(nèi)容

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64 
export PATH=$PATH:$JAVA_HOME/bin 

修改完成之后,使其生效

source /etc/profile

輸入java -version 返回版本信息則安裝正常。

安裝MAVEN

下載:http://mirrors.shu.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz

## 解壓
tar vxf apache-maven-3.5.2-bin.tar.gz
## 移動
mv apache-maven-3.5.2 /usr/local/maven3

修改環(huán)境變量, 在/etc/profile中添加以下幾行

MAVEN_HOME=/usr/local/maven3
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin

記得執(zhí)行source /etc/profile使環(huán)境變量生效。

輸入mvn -version 返回版本信息則安裝正常。

這樣整個構(gòu)建環(huán)境就配置完成了。

使用 Docker 部署 Spring Boot 項目

將項目 spring-boot-docker 拷貝服務(wù)器中,進入項目路徑下進行打包測試。

#打包
mvn package
#啟動
java -jar target/spring-boot-docker-1.0.jar

看到 Spring Boot 的啟動日志后表明環(huán)境配置沒有問題,接下來我們使用 DockerFile 構(gòu)建鏡像。

mvn package docker:build

第一次構(gòu)建可能有點慢,當(dāng)看到以下內(nèi)容的時候表明構(gòu)建成功:

...
Step 1 : FROM openjdk:8-jdk-alpine
 ---> 224765a6bdbe
Step 2 : VOLUME /tmp
 ---> Using cache
 ---> b4e86cc8654e
Step 3 : ADD spring-boot-docker-1.0.jar app.jar
 ---> a20fe75963ab
Removing intermediate container 593ee5e1ea51
Step 4 : ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom -jar /app.jar
 ---> Running in 85d558a10cd4
 ---> 7102f08b5e95
Removing intermediate container 85d558a10cd4
Successfully built 7102f08b5e95
[INFO] Built springboot/spring-boot-docker
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 54.346 s
[INFO] Finished at: 2018-03-13T16:20:15+08:00
[INFO] Final Memory: 42M/182M
[INFO] ------------------------------------------------------------------------

使用docker images命令查看構(gòu)建好的鏡像:

docker images
REPOSITORY           TAG         IMAGE ID      CREATED       SIZE
springboot/spring-boot-docker  latest       99ce9468da74    6 seconds ago    117.5 MB

springboot/spring-boot-docker 就是我們構(gòu)建好的鏡像,下一步就是運行該鏡像

docker run -p 8080:8080 -t springboot/spring-boot-docker

啟動完成之后我們使用docker ps查看正在運行的鏡像:

docker ps
CONTAINER ID    IMAGE              COMMAND         CREATED       STATUS       PORTS          NAMES
049570da86a9    springboot/spring-boot-docker  "java -Djava.security"  30 seconds ago   Up 27 seconds    0.0.0.0:8080->8080/tcp  determined_mahavira

可以看到我們構(gòu)建的容器正在在運行,訪問瀏覽器:http://192.168.0.x:8080/,返回

Hello Docker!

說明使用 Docker 部署 Spring Boot 項目成功!

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:淮安 安康 泰安 上海 福州 樂山 鷹潭 德宏

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用Docker部署Spring Boot的實現(xiàn)方法》,本文關(guān)鍵詞  使用,Docker,部署,Spring,Boot,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用Docker部署Spring Boot的實現(xiàn)方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于使用Docker部署Spring Boot的實現(xiàn)方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人黄色综合网站| 亚洲图片激情小说| 日韩高清在线不卡| 欧美日韩在线播放三区四区| 亚洲一区二区欧美激情| 欧美三区在线视频| 麻豆视频观看网址久久| 欧美激情一区二区三区四区| fc2成人免费人成在线观看播放| 亚洲视频免费在线观看| 欧美日韩精品一区二区天天拍小说| 天堂成人国产精品一区| 精品免费国产二区三区| jlzzjlzz亚洲女人18| 一区二区三区中文在线观看| 日韩三级伦理片妻子的秘密按摩| 激情欧美一区二区三区在线观看| 国产精品久久久一本精品| 欧美午夜精品久久久久久孕妇 | 亚洲一区在线观看视频| 日韩色在线观看| 久久国产精品区| 国产精品无遮挡| 欧美日韩亚洲综合在线 | 国产欧美久久久精品影院| av网站一区二区三区| 亚洲一区二区三区中文字幕在线 | 国产性天天综合网| 欧美写真视频网站| 国内精品免费**视频| 国产馆精品极品| 亚洲动漫第一页| 久久免费电影网| 欧美最猛黑人xxxxx猛交| 精品在线亚洲视频| 亚洲宅男天堂在线观看无病毒 | 中文字幕巨乱亚洲| 67194成人在线观看| 丁香网亚洲国际| 日本欧美肥老太交大片| 亚洲视频小说图片| 久久久久国产精品免费免费搜索| 欧美日韩中文字幕精品| caoporn国产一区二区| 黄色日韩网站视频| 日韩在线一区二区三区| 亚洲激情图片一区| 国产精品无人区| 日韩美女在线视频| 欧美系列日韩一区| 91影院在线观看| 国产精品系列在线播放| 免费的国产精品| 亚洲午夜三级在线| 日韩一区欧美一区| 国产日韩欧美在线一区| 日韩一区二区三区视频在线| 欧美探花视频资源| 色天使色偷偷av一区二区| 国产一区二区久久| 老司机午夜精品| 日产国产欧美视频一区精品 | 日韩一区欧美小说| 中文字幕av一区二区三区高| 精品卡一卡二卡三卡四在线| 欧美一级一区二区| 日韩午夜av一区| 日韩一区二区在线看| 在线播放视频一区| 欧美一卡二卡三卡四卡| 欧美欧美午夜aⅴ在线观看| 欧美视频在线不卡| 欧美主播一区二区三区| 91国模大尺度私拍在线视频| 91色视频在线| 91黄色激情网站| 日本久久电影网| 欧美在线视频全部完| 欧美自拍偷拍一区| 欧美中文字幕一二三区视频| 色噜噜狠狠色综合中国| 在线视频综合导航| 欧美精品vⅰdeose4hd| 在线综合亚洲欧美在线视频 | 国产日韩精品视频一区| 久久精品视频在线看| 国产在线播放一区| 国产麻豆精品在线观看| 高清不卡在线观看| 91美女片黄在线观看91美女| 91黄色小视频| 91精品在线免费观看| 久久色视频免费观看| 国产午夜精品在线观看| 国产精品久久久99| 一区二区三区美女| 人人狠狠综合久久亚洲| 九九国产精品视频| 成人精品国产免费网站| 91视频在线看| 日韩欧美一级二级三级久久久| 日韩一区二区三区在线| 亚洲国产精品二十页| 亚洲免费视频中文字幕| 日本亚洲电影天堂| 国产在线日韩欧美| 99国产精品久久久久久久久久| 欧美午夜一区二区三区| 欧美xxxxxxxx| 国产精品无遮挡| 性欧美大战久久久久久久久| 精品一区二区三区免费播放| 99riav久久精品riav| 欧美一区午夜精品| 国产精品色呦呦| 日日夜夜免费精品| 国产毛片精品视频| 欧美四级电影在线观看| 国产欧美一区二区精品性色 | 国产精品毛片久久久久久| 亚洲国产成人精品视频| 国产一区在线视频| 欧美视频一区二| 中文字幕精品三区| 午夜精品爽啪视频| 成人动漫av在线| 日韩视频一区在线观看| 亚洲另类一区二区| 国产高清视频一区| 欧美一二三在线| 亚洲综合色噜噜狠狠| 国产成人精品亚洲日本在线桃色| 欧美高清视频不卡网| 亚洲少妇中出一区| 国产一区二区三区精品欧美日韩一区二区三区 | 国产清纯美女被跳蛋高潮一区二区久久w| 亚洲欧美日本韩国| 国产一区二区三区蝌蚪| 欧美久久一区二区| 国产成人综合自拍| 91麻豆精品国产自产在线| 中文字幕中文乱码欧美一区二区| 麻豆视频观看网址久久| 欧美人牲a欧美精品| 亚洲精品老司机| 成人蜜臀av电影| 26uuu国产一区二区三区| 午夜a成v人精品| 日本韩国欧美在线| 亚洲欧洲精品天堂一级| 国产精品一二三| 精品久久国产字幕高潮| 六月丁香婷婷久久| 欧美日韩亚洲综合在线| 亚洲一区欧美一区| 91理论电影在线观看| 亚洲欧美国产毛片在线| 成人视屏免费看| 中文字幕免费在线观看视频一区| 国产乱码精品一区二区三区av| 欧美欧美欧美欧美| 视频一区二区三区在线| 在线不卡中文字幕| 美女视频黄久久| 精品国产髙清在线看国产毛片| 麻豆国产欧美一区二区三区| 日韩一区二区免费高清| 久久精品国产澳门| 久久久一区二区| 成人黄色免费短视频| 18成人在线视频| 色综合久久综合中文综合网| 一色屋精品亚洲香蕉网站| 色综合久久久久久久久久久| 国产精品成人免费在线| 欧美综合欧美视频| 日韩精品电影在线观看| 欧美成人精品福利| 国产真实乱对白精彩久久| 亚洲国产高清aⅴ视频| 不卡的av电影| 一区二区三区日本| 欧美一区二区福利视频| 久草精品在线观看| 国产日本欧美一区二区| 99久久99久久久精品齐齐| 午夜影视日本亚洲欧洲精品| 欧美一二三在线| 国产sm精品调教视频网站| 最新久久zyz资源站| 欧美综合视频在线观看| 裸体一区二区三区| 欧美激情在线一区二区| 在线免费不卡电影| 黄色成人免费在线| 亚洲欧洲www| 在线播放一区二区三区| 成人黄色av网站在线| 亚洲成av人影院| 国产亚洲成aⅴ人片在线观看|