使用docker在linux環境中部署springboot包的教程

因為springboot是內嵌瞭tomcat服務器的,所以打成jar包後,是可以直接運行的。

首先我們看一下,在windows環境下的打包部署

1. 進行install打包

2. 檢查,在target目錄中是否存在瞭項目jar包

在這裡插入圖片描述

3.如果已經存在瞭項目jar包,就可以直接運行瞭(前面說瞭,springboot包是可以直接運行的)

在這裡插入圖片描述

4.在dos命令框中使用java -jar指令

java -jar springboot-nriat-common-demo-0.0.1-SNAPSHOT.jar

 

在這裡插入圖片描述

啟動效果:

在這裡插入圖片描述

在這裡插入圖片描述

沒有報錯,啟動成功!

上面說的是windows系統上的springboot發包部署,下面進入正題。

使用docker在linux系統中進行發包部署。

1. 首先需要準備一個dockerfile的文件,文件內容如下:

# 指定基礎鏡像
FROM java:8
# 維護者信息
MAINTAINER lbl
# 定義匿名卷
VOLUME /tmp
#復制文件或修改名稱
ADD springboot-nriat-common-demo-0.0.1-SNAPSHOT.jar app.jar
# 允許指定的端口
EXPOSE 8087
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

文件解析

在這裡插入圖片描述

解釋下這個配置文件:

VOLUME 指定瞭臨時文件目錄為/tmp。其效果是在主機 /var/lib/docker 目錄下創建瞭一個臨時文件,並鏈接到容器的/tmp。該步驟是可選的,如果涉及到文件系統的應用就很有必要瞭。/tmp目錄用來持久化到 Docker 數據文件夾,因為 Spring Boot 使用的內嵌 Tomcat 容器默認使用/tmp作為工作目錄
項目的 jar 文件作為 “app.jar” 添加到容器的
ENTRYPOINT 執行項目 app.jar。為瞭縮短 Tomcat 啟動時間,添加一個系統屬性指向 “/dev/./urandom” 作為 Entropy Source

如果是第一次打包,它會自動下載java 8的鏡像作為基礎鏡像,以後再制作鏡像的時候就不會再下載瞭。

2. 將dockerfile文件與springboot項目的jar包放在同一個文件夾中

在這裡插入圖片描述

3. 然後開始制作鏡像

docker build -t springboot-docker .

使用docker images查看鏡像是否已經生成

docker images

在這裡插入圖片描述

5.配置springboot項目,啟動容器

docker run -d -p 8087:8087 8493c1f0592c

-d參數是讓容器後臺運行
-p 是做端口映射,此時將服務器中的8080端口映射到容器中的8087(項目中端口配置的是8087)端口
使用images鏡像的IMAGE ID

6. 最後使用docker ps -a,查看一下是否已經啟動。

docker ps -a

在這裡插入圖片描述

啟動成功!!

到此這篇關於使用docker在linux環境中部署springboot包的文章就介紹到這瞭,更多相關docker部署springboot包內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!