一、安裝Tomcat
1、查找Docker Hub上的tomcat鏡像
![](/d/20211016/e343a77fb35b17a4adee0af37308b657.gif)
2、拉取官方的鏡像
![](/d/20211016/9ee0ca5b40dc9b47c280fd764e40dcf5.gif)
等待下載完畢,需要一些時間。
![](/d/20211016/aac6f4d327f693ae062150e65166f8cd.gif)
3、查看docker所有的鏡像
![](/d/20211016/fce81042a984340b253c141a81b9d563.gif)
4、啟動tomcat鏡像
注:前者是外圍訪問端口:后者是容器內(nèi)部端口
docker run -d -p 8080:8080 tomcat
![](/d/20211016/f172199ab3756679bb63c93aa5f13f29.gif)
注:前者是外圍訪問端口:后者是容器內(nèi)部端口
如下命令可后臺啟動tomcat
-d: 后臺運行容器,并返回容器ID;
-i: 以交互模式運行容器,通常與 -t 同時使用;
-t: 為容器重新分配一個偽輸入終端,通常與 -i 同時使用;
docker run –d -p 8080:8080 tomcat
![](/d/20211016/a3385330119e4ccd2294003dd1057075.gif)
如下則啟動成功:
![](/d/20211016/806fd502779ad9dcc05ae45995fd0cf8.gif)
5、查看正在運行的容器
![](/d/20211016/9330c5b6fa750c40d3336bc9e097ca19.gif)
輸入ip和端口即可查看tomcat主頁:
![](/d/20211016/9bce6c2d55cad5fc2f517be620485f96.gif)
二、向Tomcat部署自己的web項目
1、上傳war包
![](/d/20211016/0646533c3e2ca2a3db4778b1fcb203eb.gif)
2、創(chuàng)建并編輯”Dockerfile”,內(nèi)容如下:
from tomcat
MAINTAINER *********@163.com
RUN rm -rf /usr/local/tomcat/webapps/*
COPY button.war /usr/local/tomcat/webapps
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
說明:
from tomcat #你的 tomcat的鏡像
MAINTAINER *********@163.com #作者
COPY button.war /usr/local/tomcat/webapps #放置到tomcat的webapps目錄下
3、生成新的鏡像
docker build -t button:v1 .
![](/d/20211016/c178266154337398ae41fd610284fd28.gif)
4、啟動新的鏡像
docker run -d -p 8080:8080 button:v1
![](/d/20211016/f6499e7d7dd8df3683c6d9dd8c3ea9c5.gif)
5、查看已啟動鏡像
可以加上參數(shù)-itd后臺啟動tomcat,用以下方式查看已啟動的鏡像
![](/d/20211016/b70825da8747a47c2bf768c544399f1d.gif)
6、查看tomcat中的項目
可以使用如下命令進入tomcat鏡像:
docker exec -it ******* /bin/bash #******是容器id(CONTAINER_ID)
![](/d/20211016/d6bf87ff4214e4d753d22219b69443bc.gif)
當(dāng)我們進入鏡像后,想對某些參數(shù)進行修改時,一般需要安裝文本編輯器,以vim為例:
由于下載地址是海外地址,下載速度非常慢而且可能出現(xiàn)中斷,所以做如下配置:
mv /etc/apt/sources.list /etc/apt/sources.list.bak
echo "deb http://mirrors.163.com/debian/ jessie main non-free contrib" >/etc/apt/sources.list
echo "deb http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list
echo "deb-src http://mirrors.163.com/debian/ jessie main non-free contrib" >>/etc/apt/sources.list
echo "deb-src http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list
然后更新
apt update
現(xiàn)在就可以安裝我們需要的軟件了,例如vim
apt install vim
7、輸入ip和端口進行查看
![](/d/20211016/f569ade2b80eece5c0912896a3377cb3.gif)
8、可以查看指定容器的log
![](/d/20211016/a40e3287b60f6400948e21c17c8b5182.gif)
9、部署web項目后也許會出現(xiàn)docker容器與宿主、docker 容器與tomcat 應(yīng)用打印日志時間和我們當(dāng)前時間相差8個小時,可以添加如下配置:
①啟動容器時,將系統(tǒng)時間掛載到容器內(nèi),可以解決docker容器與宿主時間不一致問題,如下所示:
添加參數(shù)
-v /etc/localtime:/etc/localtime:ro
完整命令如下示例:
sudo docker run -d --name button-api -p 8080:8080 -v /etc/localtime:/etc/localtime:ro button-api:v1
②docker 容器與tomcat 應(yīng)用打印日志時間不一致
啟動tomcat容器后進入tomcat的"bin"目錄,修改catalina.sh文件
在注釋結(jié)束的第一行添加如下內(nèi)容:
JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF8 -Duser.timezone=GMT+08"
如下圖所示:
![](/d/20211016/4da097b543a0f67b638fbcbf7bdb81d3.gif)
修改保存后重啟docker容器就可以了。
重啟方法:
"docker ps"查詢?nèi)萜鱥d,使用如下命令重啟:
到此即可解決該問題。
到此這篇關(guān)于簡述Docker安裝Tomcat鏡像并部署web項目的文章就介紹到這了,更多相關(guān)Docker安裝Tomcat鏡像并部署內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!