本文章是在網(wǎng)易云課堂的課程學(xué)習(xí)中編寫岳守,部分圖片從網(wǎng)易云課堂ppt引用
在本文章中薛夜,我們使用定制的鏡像來運(yùn)行Java程序
1、上傳Java包
把我們打好的war包或者jar包吱型,上傳到安裝有docker軟件的服務(wù)器上的宿主目錄下智哀。這里我上傳的是一個(gè)Java Web的war包:session-web.war
2、創(chuàng)建Dockerfile
在同級(jí)目錄下創(chuàng)建Dockerfile:
touch Dockerfile
3楚昭、編輯Dockerfile
vi Dockerfile
按照前面章節(jié)所學(xué)的Dockerfile定制鏡像知識(shí)如庭,編寫Dockerfile文件內(nèi)容:
FROM tomcat:7.0.88-jre8
MAINTAINER wunuting wunuting@123.com
ENV TOMCAT_BASE /usr/local/tomcat
COPY ./session-web.war $TOMCAT_BASE/webapps/
- 基礎(chǔ)鏡像使用tomcat:7.0.88-jre8,可以在docker hub中查找要使用的
- 指定作者舒岸,這一步可以不用
- 定義環(huán)境變量
- 復(fù)制war包
4绅作、執(zhí)行構(gòu)建
docker build -t session-web:latest .
如果構(gòu)建成功,則會(huì)顯示構(gòu)建的分層信息及結(jié)果:
可以使用docker images命令查看本地是否有該鏡像:
5蛾派、鏡像運(yùn)行
鏡像制作好之后俄认,我們就可以把它運(yùn)行起來了
docker run --name session-web -d -p 8888:8080 session-web:latest
-d :后臺(tái)運(yùn)行
-p:宿主機(jī)和容器端口映射,這里是將容器的8080端口映射到宿主機(jī)的8888端口
運(yùn)行成功后洪乍,可使用以下命令驗(yàn)證端口是否是在監(jiān)聽狀態(tài):
netstat -na | grep 8888
打開瀏覽器訪問成功: