docker中如何將jar包構(gòu)建成鏡像并執(zhí)行
docker將jar包構(gòu)建成鏡像并執(zhí)行
1.編寫Dockerfile文件
????FROM java:latest ????ADD AeurekaServer-0.0.1-SNAPSHOT.jar app.jar ????RUN bash -c 'touch /app.jar' ????ENTRYPOINT ["java","-jar","/app.jar"]
FROM 跟的是已經(jīng)有的java鏡像和版本號(hào)
其中綠色部分為打包的jar名稱。
2.將jar包放在Dockerfile文件同一個(gè)目錄下。執(zhí)行命令sudo docker build -t="aeurekaserver" .
注意不要少了 . 引號(hào)中填寫的是要生存的鏡像名稱

3.docker images查看生成的鏡像。

4.執(zhí)行鏡像
docker制作jar鏡像
第一步
首先在你存放jar包 目錄下 創(chuàng)建Dockerfile 文件

touch Dockerfile
第二步
編寫制作鏡像的命令文件也就是Dockerfile文件
vi Dockerfile #指定以jdk 為基礎(chǔ)鏡像,來構(gòu)建此鏡像,可以理解為運(yùn)行的需要基礎(chǔ)環(huán)境 FROM majiajue/jdk1.8 #maintainer 指令 作者是xxx MAINTAINER xxx #將當(dāng)前demo.jar 復(fù)制到容器根目錄下 ADD /home/auth/ymf-auth.jar /home/auth/ymf-auth.jar #暴露容器端口為8080 Docker鏡像告知Docker宿主機(jī)應(yīng)用監(jiān)聽了8080端口 EXPOSE 8080 #容器啟動(dòng)時(shí)執(zhí)行的命令 CMD java -jar -server -Xms256m -Xmx256m -Xmn128m -Xss1m -XX:-UseAdaptiveSizePolicy -XX:MaxTenuringThreshold=15 -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError /home/auth/ymf-auth.jar >> /home/auth/logs/ymf-auth.out
第三步
使用docker build 構(gòu)建鏡像 ymf-auth 構(gòu)建之后鏡像名稱 . 表示 Dockerfile 文件在當(dāng)前目錄下
docker build -t ymf-auth .? ?#有一個(gè).符號(hào)喲
第四步
啟動(dòng)鏡像
docker run --name demo -it -v /home/auth:/home/auth #宿主機(jī)目錄與容器目錄映射 作用是只要更新宿主機(jī)jar包 相應(yīng)的容器目錄里的jar包也會(huì)更新 -v /etc/localtime:/etc/localtime # 宿主機(jī)時(shí)間同步容器時(shí)間 -d --restart=always ymf-auth
第五步
查看啟動(dòng)的容器
docker ps
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用Docker+jenkins+python3環(huán)境搭建超詳細(xì)教程
這篇文章主要介紹了使用Docker+jenkins+python3環(huán)境搭建超詳細(xì)教程,本文通過多種方法結(jié)合示例代碼給大家詳細(xì)介紹,需要的朋友可以參考下2021-07-07
基于docker的AI-Codereview-Gitlab部署實(shí)戰(zhàn)教程
AI-Codereview-Gitlab是一個(gè)基于大模型的自動(dòng)化代碼審查工具,幫助開發(fā)團(tuán)隊(duì)在代碼合并或提交時(shí),快速進(jìn)行智能化的審查(Code Review),提升代碼質(zhì)量和開發(fā)效率,這篇文章主要介紹了基于docker的AI-Codereview-Gitlab部署實(shí)戰(zhàn) ,需要的朋友可以參考下2025-05-05
docker.service啟動(dòng)失?。篣nit not found的原因及解決辦法
這篇文章主要介紹了docker.service啟動(dòng)失敗:Unit not found的原因分析及解決辦法,需要的朋友可以參考下2017-04-04
基于docker?部署canvas-lms的詳細(xì)步驟
這篇文章主要介紹了基于docker?部署?canvas-lms,本文分步驟給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03
docker update 命令與環(huán)境變量管理方法
本文介紹Docker中dockerupdate命令用于動(dòng)態(tài)調(diào)整運(yùn)行中容器的配置,如資源限制、重啟策略等,但部分需重啟生效,環(huán)境變量在啟動(dòng)時(shí)設(shè)置,無法動(dòng)態(tài)修改,建議通過掛載文件或Docker Compose管理,感興趣的朋友跟隨小編一起看看吧2025-07-07
Docker通過容器生成鏡像提交DockerCommit詳解
這篇文章主要介紹了Docker通過容器生成鏡像提交DockerCommit的詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2021-09-09
vscode進(jìn)入服務(wù)器docker容器的方法
這篇文章主要介紹了vscode進(jìn)入服務(wù)器docker容器的方法,首先要確保已經(jīng)運(yùn)行docker容器,已經(jīng)用vscode鏈接服務(wù)器,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-04-04

