首頁  >  文章  >  運維  >  docker如何實現打包

docker如何實現打包

WJ
WJ原創
2020-06-09 16:33:434423瀏覽

 docker如何實現打包

docker如何實作打包?

Docker相關術語:

  (1).映像、容器、倉庫

  Docker的特徵:

  (1) .關鍵字:貨櫃、標準、隔離。

  Docker的部署實務:

  1.建立dockerfile

  注意我提到的假設:你的jar包或war包都已經打包成功,而且docker安裝成功。

  dockerfile 的內容如下:

FROM azul/zulu-openjdk:8
VOLUME /home/work/springDemo
ADD springDemo-0.0.1-SNAPSHOT.jar app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

   FROM:基於哪個映像

   VOLUME:可以將本地資料夾或其他container的資料夾掛載到container中

#container中

      ADD:將文件cbce1a3cf2f839037583dce8e845670b拷貝到container的檔案系統對應的路徑6be58d1426a577c69ada50a4bc87dd69

   RUN:RUN命令將在目前image中執行任意合法命令並提交執行結果。命令執行提交後,就會自動執行Dockerfile中的下一個指令

   ENTRYPOINT:container啟動時執行的命令,但是一個Dockerfile中只能有一條ENTRYPOINT命令,如果多條,則只執行最後一條

   重點:dockerfile 與jar套件或war套件的位置

   注意:新建立的 Dockerfile 檔案需要和 jar 的在一個資料夾下。

    2.Jar包的生成

    大家看到上圖中的.jar 的包可能會有困惑,這個包是怎麼生成的呢?下面我們就來看看這個包是如何產生的。

    由於我是透過maven的方式來建構專案的,所以也是透過maven的方式來的build的,當然前提依然是你的環境中安裝了 maven,具體操作我們來看看截圖。

    經過上面的操作後,就build 好了 jar包。

    3.產生映像

     shell 指令說明:重點是你要 cd 到存放Dockerfile 和 jar包或war包所在的資料夾下面。

     指令:sudo docker build -t springbootdemo .

   注意:指令後面的  .    要帶上 。

   -t參數的含義我記不清了,你可以透過 sudo docker build --help 來查看相關函數的解釋。 springbootdemo是build的鏡像名稱。

   以上操作完成了Docker 映像的建立。檢驗映像是否建立成功,指令: sudo docker images   ,可以看到springbootdemo就是剛才建立的映像。

    4.啟動容器

#    容器其實也相當與鏡像的載體。

    容器的啟動指令截圖:

##    啟動指令:sudo docker run -d -p 8080:8080 springbootdemo

##C意義我也忘卻了,大家可以查。  8080:8080是一個連接埠的映射,它的具體邏輯和原理,我建議大家學習Docker中仔細看看,springbootdemo 就是我上面提到的鏡像檔。

    查看目前運作中的容器:sudo docker ps

##   

 5.驗證

    驗證環節就可看看我們的 Demo是否部署成功了,如果你的jar包或war包跟我以一樣,是web程式的話,就可以透過瀏覽器來測試。       相關推薦:docker教學

###  #######

以上是docker如何實現打包的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn