使用Docker部署Springboot項(xiàng)目

1、Docker快速部署項(xiàng)目Springboot
1.1 了解Dockerfile的文件編寫規(guī)范

FROM 指定父鏡像: ?基于哪個(gè)鏡像image構(gòu)建 ?指定基礎(chǔ)鏡像,必須為第一個(gè)命令

MAINTAINER:維護(hù)者

RUN: 容器創(chuàng)建的時(shí)候執(zhí)行一段命令 ??構(gòu)建鏡像時(shí)執(zhí)行的命令

ADD: 將本地文件添加到容器中,tar類型文件會(huì)自動(dòng)解壓(網(wǎng)絡(luò)壓縮資源不會(huì)被解壓),可以訪問(wèn)網(wǎng)絡(luò)資源,類似wget

COPY:功能類似ADD,但是是不會(huì)自動(dòng)解壓文件,也不能訪問(wèn)網(wǎng)絡(luò)資源

CMD:構(gòu)建容器后調(diào)用,也就是在容器啟動(dòng)時(shí)才進(jìn)行調(diào)用。 .sh執(zhí)行文件

ENV: 設(shè)置環(huán)境變量

EXPOSE: 指定于外界交互的端口

VOLUME用于指定持久化目錄

WORKDIR 設(shè)置進(jìn)入容器時(shí)的路徑 默認(rèn)訪問(wèn)的目錄

1.2 制作Dockerfile文件

1. 使用 命令創(chuàng)建dockerfile文件: touch dockerfile

2.準(zhǔn)備好jar包需要與dockerfile文件在同一個(gè)目錄


jar包與dockerfile放同一目錄

我的Dockerfile文件內(nèi)容:

[

# 基礎(chǔ)鏡像使用java

FROM java:8

# 作者

MAINTAINER dengdong

# VOLUME 指定了臨時(shí)文件目錄為/tmp。

# 其效果是在主機(jī) /var/lib/docker 目錄下創(chuàng)建了一個(gè)臨時(shí)文件,并鏈接到容器的/tmp

VOLUME /tmp

# 將jar包添加到容器中并更名為metadata.jar

ADD comeon2021-0.0.1-SNAPSHOT.jar comeon2021.jar

# 運(yùn)行jar包

RUN bash -c 'touch /comeon2021.jar'

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/comeon2021.jar"]

#暴露7894端口

EXPOSE 7894

]

dockerfile案例

3.將dockerfile構(gòu)建成一個(gè)鏡像

命令:

docker build -f dockerfile文件 -t dockerfile里面的jar包文件:1 .

docker build -f dockerfile -t metadata-management:1 .

命令尾部有空格加點(diǎn)!

構(gòu)建鏡像步驟

4.使用鏡像命令對(duì)進(jìn)行操作并運(yùn)行

4.1 查詢鏡像命令:docker images


docker鏡像

4.2 使用docker命令進(jìn)行運(yùn)行該鏡像命令:docker run -d -p 7894:7894 鏡像id


docker容器運(yùn)行鏡像

4.3 使用docker命令查詢?nèi)萜鬟\(yùn)行情況

命令:docker ps(列出當(dāng)前所有正在運(yùn)行的容器)和docker ps -a(列出所有的容器)


運(yùn)行成功

4.4 可以使用服務(wù)器加端口進(jìn)行訪問(wèn)了,案例訪問(wèn):http://192.168.1.100:7894/項(xiàng)目,完畢!

如出現(xiàn)以下情況請(qǐng)使用該命令進(jìn)行運(yùn)行:


用正常命令出現(xiàn)錯(cuò)誤

出現(xiàn)原因:-p命令映射端口的時(shí)候防火墻攔截,這種方式解決問(wèn)題有兩種方式:

第一種:

docker run -d --net=host 鏡像id

第二種:

在防火墻里面設(shè)置這個(gè)端口,然后重啟防火墻,重啟docker

?著作權(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),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

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