spring boot專案生成docker映象並完成容器部署
阿新 • • 發佈:2018-12-26
一、問題產生
把spring boot專案生成的jar打成docker映象並生成docker容器完成部署是比較簡單方便的部署方式,而且部署過程很少會出錯。
二、部署步驟
1.利用maven或者gradle完成打包工作,打成jar包的形式。
2.在專案中的任意位置建立Dockerfile檔案,本人的檔案如下:
FROM java:8 VOLUME /tmp ADD front-1.0-SNAPSHOT.jar front.jar RUN bash -c 'touch /front.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/front.jar"]
FROM java:8是指含有jdk1.8的映象
VOLUE /tmp /tmp目錄並持久化到Docker資料資料夾,因為Spring Boot使用的內嵌Tomcat容器預設使用/tmp作為工作目錄
ADD front-1.0-SNAPSHOT.jar front.jar
新增自己的專案到到front.jar中,注意:這裡的包名要和pom檔案中的包名一致。
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/front.jar"]
ENTRYPOINT是指容器執行後預設執行的命令。
3.上傳自己的專案和Dockerfile檔案到虛擬機器,可以放在同一個目錄下面
4.建立自己的映象
docker build -t front:1.0-SNAPSHOT .
注意後面是有個點的。
顯示建立成功,檢視下映象。
現在映象就建立成功了。
5.生成docker容器
docker run -d -p 8080:8080 --name front front:1.0-SNAPSHOT
-d:後臺執行容器
-p 8080:8080 主機的埠和docker容器中的埠做對映
front 自定義的容器名稱
front:1.0-SNAPSHOT映象名稱和對應版本,如果沒有指定版本,預設會去尋找lastest版本。
生成了容器的id,docker ps -a檢視是否存在front容器。
是生成了容器,接下來啟動就可以了。