docker運(yùn)行jar包加載外部配置文件方式
docker運(yùn)行jar包加載外部配置文件
1、創(chuàng)建Dockerfile文件
FROM java EXPOSE 8083 ADD data_app-3.2.1-SNAPSHOT.jar smart.jar COPY application.properties / RUN bash -c 'touch /smart.jar' ENTRYPOINT ["java","-jar","/smart.jar","--spring.config.location=/application.properties"]
FROM
拉取java鏡像EXPOSE
開放的端口號ADD
將需要執(zhí)行的jar包復(fù)制到容器的根目錄下,并更換別名COPY
將配置文件復(fù)制到容器的根目錄中RUN
將在當(dāng)前鏡像基礎(chǔ)上執(zhí)行指定命令,并提交為新的鏡像ENTRYPOINT
配置容器啟動后執(zhí)行的命令
2、構(gòu)建docker鏡像
docke build -t java/demo .
注意事項(xiàng):不能漏掉.,-t是給鏡像命名,.(點(diǎn))是基于當(dāng)前目錄的Dockerfile來構(gòu)建鏡像
3、啟動docker容器
docker run -d -p 8083:8083 --restart=always --name demo java/demo
docker run
:基于鏡像啟動一個容器-d
:后臺方式啟動-p 8083:8083
: 端口映射,將宿主機(jī)的8083端口映射到容器的8083端口–name
:容器名,我起的叫demojava/demo
:要啟動的鏡像名稱–restart=always
跟隨docker容器啟動
4、查看,訪問
docker ps
打開測試工具poman,192.168.99.100:8083+對應(yīng)的接口名稱,測試結(jié)果返回即成功
docker搭建jar包運(yùn)行環(huán)境
docker搭建jar包運(yùn)行環(huán)境Dockerfile(之前都是用的 java:8-alpine
,因?yàn)槭褂?easyexcel
字體問題切的)
# 容器版本 FROM centos:centos7.9.2009 # jdk根目錄 ENV JAVA_DIR=/usr/local # 把宿主機(jī)的jdk上傳到容器中 COPY ./jdk1.8.0_51 $JAVA_DIR/jdk1.8.0_51 # 配置環(huán)境變量 ENV JAVA_HOME=$JAVA_DIR/jdk1.8.0_51 ENV PATH=$PATH:$JAVA_HOME/bin # 設(shè)置字符,不然中文會亂碼 ENV LANG en_US.utf8 # 安裝字體 RUN yum install dejavu-sans-fonts fontconfig -y #添加時區(qū) ENV TZ=Asia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
編寫玩Dockerfile后build,可推送到鏡像倉庫后重復(fù)使用或者導(dǎo)出來重復(fù)使用
- build
docker build -t [鏡像服務(wù)器地址]:[版本號] .
- pull
docker pull [鏡像服務(wù)器地址]:[版本號]
- 導(dǎo)入導(dǎo)出鏡像
#導(dǎo)入 docker load -i xxx.tar #導(dǎo)出 docker save -o xxx.tar [鏡像id|鏡像名:tag]
總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用 Docker 在 Ubuntu 上部署 FTP 服務(wù)器
本文詳細(xì)介紹了如何在Ubuntu系統(tǒng)上通過Docker部署FTP服務(wù)器的步驟,包括安裝Docker、拉取vsftpd鏡像以及運(yùn)行FTP容器等,通過這些步驟,用戶可以在提供的免費(fèi)云服務(wù)器上快速搭建起一個安全高效的FTP服務(wù),適合小型項(xiàng)目或個人使用,感興趣的朋友跟隨小編一起看看吧2024-10-10使用Docker構(gòu)建一個Git鏡像使用clone倉庫
這篇文章主要介紹了使用Docker構(gòu)建一個Git鏡像使用clone倉庫,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12docker中mysql數(shù)據(jù)庫密碼修改方法
長時間使用非關(guān)系型數(shù)據(jù)庫MongoDB近期遇到突然想使用mysql卻發(fā)現(xiàn)mysql密碼忘記了,下面這篇文章主要給大家介紹了關(guān)于docker中mysql數(shù)據(jù)庫密碼修改方法的相關(guān)資料,需要的朋友可以參考下2023-11-11Docker學(xué)習(xí)之常用的基礎(chǔ)命令總結(jié)
這篇文章給大家整理了一些Docker常用的基礎(chǔ)命令,對大家日常使用Docker還是很有幫助,通過這些命令可以有效的提高大家的工作效率,有需要的朋友們下面來一起看看吧。2016-10-10Docker實(shí)現(xiàn)TLS和CA認(rèn)證的方法步驟
為了更便捷地連接Docker服務(wù)器,Docker服務(wù)器需要開放2375端口才能連接docker,本文主要介紹了Docker實(shí)現(xiàn)TLS和CA認(rèn)證的方法步驟,具有一定的參考價值,感興趣的可以了解一下2024-06-06