使用docker部署SpringBoot專案
阿新 • • 發佈:2018-12-26
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 即可檢視效果