Dockerfile容器中怎么運(yùn)行MyEclipse搭建的JavaWeb項(xiàng)目

這篇文章主要講解了“Dockerfile容器中怎么運(yùn)行MyEclipse搭建的JavaWeb項(xiàng)目”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“Dockerfile容器中怎么運(yùn)行MyEclipse搭建的JavaWeb項(xiàng)目”吧!

創(chuàng)新互聯(lián)建站堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的上杭網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

應(yīng)用程序在docker容器中運(yùn)行和在物理機(jī)運(yùn)行的原理是一樣的,所以我們部署這個(gè)javaweb項(xiàng)目到docker中的步驟應(yīng)該如下:

  • 服務(wù)器支持(這里選擇centos7)

  • 安裝java環(huán)境

  • 安裝tomcat環(huán)境

  • 將tomcat根目錄下的webapps/root目錄下的所有文件(夾)刪除

  • 將自己開(kāi)發(fā)的web項(xiàng)目的webroot目錄下的所有文件(夾)復(fù)制到tomcat的webapps/root下

  • 啟動(dòng)tomcat服務(wù)

步驟已經(jīng)很清楚了,但要制作docker鏡像還得借助另一樣?xùn)|西:dockerfile。

dockerfile是一個(gè)包含有docker能識(shí)別的特殊指令的文件。當(dāng)創(chuàng)建好dockerfile文件之后就可以使用docker build來(lái)創(chuàng)建docker鏡像了。

開(kāi)始構(gòu)建docker鏡像

  • 創(chuàng)建一個(gè)本示例的文件夾webapp

  • 將項(xiàng)目的webroot拷貝到該文件夾

  • 創(chuàng)建dockerfile文件

結(jié)構(gòu)如下圖:

構(gòu)建docker鏡像結(jié)構(gòu)圖

Dockerfile容器中怎么運(yùn)行MyEclipse搭建的JavaWeb項(xiàng)目

創(chuàng)建鏡像

docker build -t "zsl131/web01" .

注意:

docker build:創(chuàng)建docker鏡像

-t "zsl131/web01":指定鏡像名稱,這里指定為zsl131/web01;鏡像名稱由倉(cāng)庫(kù)和名稱兩部份組成,zsl131為我在hub.docker.com注冊(cè)申請(qǐng)的倉(cāng)庫(kù)名稱,web01才是這個(gè)鏡像的名稱

.:注意前面有個(gè)空格,表示在當(dāng)前目錄下找dockerfile文件來(lái)構(gòu)建鏡像。

下面是本示例創(chuàng)建docker鏡像的dockerfile,為了更加認(rèn)識(shí)dockerfile可以將下面文件中的指令全部刪除,然后每加一行執(zhí)行一次:docker build -t "zsl131/web01" .,這樣可以看到使用dockerfile來(lái)構(gòu)建鏡像時(shí)的各種信息:

# 以centos7作為基礎(chǔ)鏡像
from centos:7

# 在不知道該如何安裝jdk時(shí)可以啟用下面這行命令,然后就直接運(yùn)行:docker build
#run yum search java | grep jdk

# 選擇適合的jdk版本安裝
run yum install -y java-1.7.0-openjdk.x86_64

# 在根目錄下創(chuàng)建一個(gè)名為web的目錄
run mkdir /web/

# 設(shè)置工作目錄為/web,設(shè)置之后可以使用:run pwd來(lái)查看當(dāng)前的路徑
workdir /web/

# 安裝wget以方便下載tomcat
run yum install -y wget

# 下載tomcat壓縮文件
run wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-6/v6.0.48/bin/apache-tomcat-6.0.48.tar.gz

# 解壓tomcat文件
run tar zxvf apache-tomcat-6.0.48.tar.gz

# 設(shè)置工具目錄
workdir /web/apache-tomcat-6.0.48/webapps/root/

# 查看當(dāng)前目錄下的所有文件(夾),這時(shí)會(huì)有tomcat自帶的一些文件
run ls -l

# 刪除當(dāng)前目錄下的所有文件(夾)
run rm -rf *

# 刪除后再列表,這時(shí)沒(méi)有任何文件
run ls -l

# 將webroot目錄下的所有文件(夾)復(fù)制到當(dāng)前目錄即(webapps/root),這里也可以使用copy指令
add webroot .

# 復(fù)制完成后可以再列表看一下是否復(fù)制成功
run ls -l

# 設(shè)置工作目錄到tomcat的bin目錄下,以方便啟動(dòng)tomcat服務(wù)
workdir /web/apache-tomcat-6.0.48/bin/

# 對(duì)外暴露tomcat的8080端口
expose 8080

# 啟動(dòng)tomcat服務(wù),這樣啟動(dòng)不會(huì)在docker run時(shí)被覆蓋
entrypoint ["./catalina.sh", "run"]

完成dockerfile的編寫(xiě)后,最后再通過(guò)以下命令構(gòu)建鏡像:

docker build -t "zsl131/web01" .

通過(guò)命令docker images可以查看剛剛構(gòu)建的鏡像。

運(yùn)行容器

docker run -d --name web01 -p 80:8080 zsl131/web01

說(shuō)明:

docker run:運(yùn)行容器命令

-d:后臺(tái)運(yùn)行

--name web01:設(shè)置容器名稱為web01

-p 80:8080:將對(duì)外暴露的端口指定為80,即當(dāng)外部訪問(wèn)80端口時(shí)會(huì)映射到容器內(nèi)的8080端口

zsl131/web01:鏡像名稱

查看容器啟動(dòng)日志

docker logs web01

說(shuō)明:

docker logs:查看容器日志命令

web01:被查看的容器名稱,這里是web01

訪問(wèn)

打開(kāi)瀏覽器輸入:http://192.168.99.100即可訪問(wèn)由myeclipse創(chuàng)建的javaweb項(xiàng)目了。

注意:192.168.99.100是我docker宿主機(jī)的ip地址,可以通過(guò)docker-machine inspect test01來(lái)查看,其中test01是docker宿主機(jī)的名稱。

感謝各位的閱讀,以上就是“Dockerfile容器中怎么運(yùn)行MyEclipse搭建的JavaWeb項(xiàng)目”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)Dockerfile容器中怎么運(yùn)行MyEclipse搭建的JavaWeb項(xiàng)目這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

網(wǎng)站名稱:Dockerfile容器中怎么運(yùn)行MyEclipse搭建的JavaWeb項(xiàng)目
URL分享:http://muchs.cn/article38/ghcjsp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、建站公司、App開(kāi)發(fā)、App設(shè)計(jì)、動(dòng)態(tài)網(wǎng)站網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名