1. 程式人生 > >使用docker部署SpringBoot專案

使用docker部署SpringBoot專案

1.新建一個SpringBoot專案

自己寫吧。。。。我放個測試的

package com.pibigstar.web;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class IndexController {

    @RequestMapping
("/") public String toIndex() { return "index"; } @RequestMapping("/hello") @ResponseBody public String hello() { return "Hello pibigstar"; } }

2. 打包SpringBoot專案成jar包

3. 編寫Dockerfile檔案

# Docker image for springboot file run
# VERSION 0.0.1
# Author: pibigstar
# 基礎映象使用java
FROM java:8
# 作者
MAINTAINER pibigstar <
[email protected]
>
# VOLUME 指定了臨時檔案目錄為/tmp。 # 其效果是在主機 /var/lib/docker 目錄下建立了一個臨時檔案,並連結到容器的/tmp VOLUME /tmp # 將jar包新增到容器中並更名為app.jar ADD onlineSpider-0.0.1-SNAPSHOT.jar app.jar # 執行jar包 RUN bash -c 'touch /app.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

如果是第一次打包,它會自動下載java 8的映象作為基礎映象,以後再製作映象的時候就不會再下載了。

4. 部署檔案

如果不會安裝docker的可以看我之前的部落格。。。這裡就不贅述了

在伺服器中新建一個資料夾用來存放我們的專案檔案 mkdir docker

將打包好的jar包和Dockerfile檔案上傳到此資料夾中,然後進入此資料夾cd docker

5. 製作映象

執行下面命令, 看好,最後面有個 . 點!

docker build -t springboot-demo .

-t 引數是指定此映象的tag名

製作完成後通過下面命令檢視我們製作的映象

docker images

5. 啟動容器

有很多人搞不定映象和容器的關係,其他他倆比較像java中的類與例項,映象就好比類,而容器就是映象的一個例項

執行下面命令啟動容器

docker run -d -p 8081:8080 springboot-demo

-d引數是讓容器後臺執行
-p 是做埠對映,此時將伺服器中的8081埠對映到容器中的8080埠

6. 訪問

直接瀏覽器訪問: http://你的伺服器ip地址:8081/hello 即可檢視效果