Docker部署springboot專案例項
阿新 • • 發佈:2018-12-26
一. 背景
快到2018了,一年過得如火如荼,今年因為K8S的原因,Docker很是紅火、
一個簡單的Docker部署Springboot專案例項供大家參考、
二. 例項
步驟:
1. 建立映象
2. 啟動應用
1. 建立映象
- 建立DockerFile
cd /var/docker
vi Dockerfile
- 編寫
FROM hub.yun.paic.com.cn/official/jdk:8 #使用映象
VOLUME /var/docker/standard #繫結容器內的路徑到主機
ADD standard.jar app.jar #拷貝standard .jar 到容器內並且命名為app.jar
RUN bash -c 'touch /app.jar' #以bash方式執行jar
EXPOSE 8080 #容器對外開放埠
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar","--spring.profiles.active=docker"] #啟動jar並且新增引數
解釋:
FROM ;使用的底層映象
RUN :指令告訴docker 在映象內執行命令,安裝了什麼。。。
EXPOSE :指令用來告訴Docker這個容器在執行時會監聽哪些埠,也就是這些埠與本機繫結
“-Djava.security.egd=file:/dev/./urandom” 防止一個容器內啟動多個例項 安全問題
Dockerfile中的註解別加哈,我為了解釋清楚
- 進入DockerFile 目錄下
把專案打包好的standard.jar上傳到這個目錄下
打包jar的方法很多,我用的是在專案工作空間中執行
mvn clean install package
之後打映象
docker build -t hero/test:dev .
解釋:
. :表示Dockerfile 檔案所在目錄,可以指定Dockerfile 的絕對路徑
-t :指定映象名
名字後面的”: “:代表tag,也就是1.0
- 檢視映象
docker images
也可以打TAG
5. 映象打tag
docker tag 1234(映象ID) hero/test:dev1.0
2. 啟動應用
- 使用映象建立容器
docker run –t –i hero/test:dev &
- 檢視容器
docker ps
- 檢視日誌
docker logs -f 123123(容器ID)
3. 測試
後續文章中會講述kuberneters 搭建微服務專案例項。