Docker 部署SpringBoot應用
Dockerfile 介紹
FROM:表示基礎鏡像,即運行環境docker中jdk8的名字
VOLUME : /tmp
創建/tmp目錄並持久化到Docker數據文件夾,因爲Spring Boot使用的內嵌Tomcat容器默認使用/tmp作爲工作目錄
ADD:拷貝文件並且重命名(ADD springboot-1.0-SNAPSHOT.jar /boot.jar
springboot-1.0-SNAPSHOT.jar原jar包名; 你想在docker鏡像中設置的名字boot.jar
)
EXPOSE:並不是真正的發佈端口,這個只是容器部署人員與建立image的人員之間的交流,即建立image的人員告訴容器佈署人員容器應該映射哪個端口給外界(8080
可省略)
ENTRYPOINT:容器啓動時運行的命令,相當於我們在命令行中輸入java -jar xxxx.jar,爲了縮短 Tomcat 的啓動時間,添加java.security.egd的系統屬性指向/dev/urandom作爲 ENTRYPOINTENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/boot.jar"]
FROM java:8
VOLUME /tmp
ADD springboot-1.0-SNAPSHOT.jar /test.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/test.jar"]