Docker初見(七)Docker 發(fā)布jar包

1.上傳jar到服務(wù)器的指定目錄

2.在該目錄下創(chuàng)建Dockerfile 文件

vi Dockerfile

3.然后將下面的內(nèi)容復(fù)制到Dockerfile文件中

FROM java:8
MAINTAINER MrZhai
ADD demo-0.0.1-SNAPSHOT.jar demo.jar
ENV PARAMS=""
EXPOSE 8080
ENTRYPOINT ["sh","-c","java $PARAMS -jar demo.jar"]
  • from java:8 拉取一個(gè)jdk為1.8的docker image

  • maintainer 作者是MrZhai

  • demo-0.0.1-SNAPSHOT.jar 就是你上傳的jar包,替換為jar包的名稱

  • demo.jar 是你將該jar包重新命名為什么名稱,在容器中運(yùn)行

  • enc 該容器需要傳的參數(shù)是什么

  • PARAMS 是參數(shù)變量

  • expose 該容器暴露的端口是多少,就是jar在容器中以多少端口運(yùn)行

  • entrypoint 容器啟動(dòng)之后執(zhí)行的命令,java -jar demo.jar 即啟動(dòng)jar

    4.創(chuàng)建好Dockerfile文件之后,執(zhí)行命令 構(gòu)建鏡像:

docker build -t my/demo .
  • 注意最后的 . 表示 Dockerfile 文件在當(dāng)前目錄下
  • my/demo 構(gòu)建之后鏡像名稱

5.鏡像構(gòu)建成功之后,就可以運(yùn)行容器了:

docker run -d --name demo -p 8080:8080 my/demo

docker run -d -e PARAMS="-Dserver.port=8080" --restart=always --name demo -p 8080:8080  my/demo
  • 這個(gè)表示docker容器在停止或服務(wù)器開機(jī)之后會(huì)自動(dòng)重新啟動(dòng) --restart=always
  • -e PARAMS="-Dserver.port=8080"技術(shù)傳的參數(shù)

6.然后,看看你的容器有沒有在運(yùn)行即可

docker ps 

7.查看啟動(dòng)日志

 docker logs --tail  300 -f  demo  

另: 如果docker run 的時(shí)候沒有加 --restart=always ,然后已經(jīng)運(yùn)行的docker容器怎么設(shè)置自動(dòng)重啟? 執(zhí)行下面命令:

docker update –-restart=always demo 
  • demo : 你的容器名稱
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容