Docker 安装 tomcat
Docker 安装 tomcat
主要有两种方式来安装tomcat镜像,一种是在dockerhub中下载,另一种方式是先自己制作tomcat镜像,然后在在docker中运行tomcat镜像,本文为了简单处理采用dockerhub下载的tomcat镜像。
1、安装步骤
1.1、搜索tomcat镜像
$ docker search tomcat
通过上述命令查找tomcat镜像,选择Apache的tomcat,一般搜索到的结果,Apache tomcat是排在第一个的。而后可以进行安装。
1.2、安装tomcat镜像
$ docker pull tomcat
1.3、查看安装的tomcat镜像
$ docker images
该命令回列出已经安装的tomcat镜像。
1.4、启动tomcat容器
$ docker run --name tomcat-test -d -p 8080:8080 tomcat
说明:
-d 表示后台运行,并返回后台容器,
-p 表示端口号,前一个8080是指我们访问tomcat时的端口号,
后一个8080是tomcat启动的一个容器在docker中运行的端口号, 指定端口号为了更明确的访问tomcat。
2、解决404
启动之后浏览器输入 192.168.44.130:8080 发现页面输出404,这就有点纳闷了,在其他人的博客中找到了解决方法。
2.1、进入 tomcat 容器查看文件
# 进入tomcat,0be1774e1e5e为容器ID
docker exec -it 0be1774e1e5e /bin/bash
# 以列表形式查看文件
ls -l
2.2、webapps、webapps.dist 文件夹
查看 webapps 文件夹,发现文件夹里没有东西,查看 webapps.dist 文件夹,发现文件在里面,因此删除原有的 webapps 文件夹, webapps.dist 文件夹重命名为 webapps。
# 进入webapps
cd webapps
# 发现没有文件
ls -l
# 进入webapps.dist
cd webapps.dist
# 存在examples文件
ls -l
# 删除webapps
rm -r webapps
# 重命名
mv webapps.dist webapp
# 退出
exit
再次访问 192.168.44.130:8080 ,页面访问成功。
3、容器文件映射到本地目录(挂载)
点击了解挂载
拷贝容器内 tomcat 配置文件和日志到本地准备映射
docker cp tomcat-test:/usr/local/tomcat/conf /root/tomcat/conf
docker cp tomcat-test:/usr/local/tomcat/logs /root/tomcat/logs
docker cp tomcat-test:/usr/local/tomcat/webapps /root/tomcat/webapps
停止tomcat,并删除容器
docker stop tomcat-test
docker rm tomcat-test
创建并运行tomcat容器
docker run -d -p 8081:8080 --name tomcat-test1 -v /root/tomcat/webapps:/usr/local/tomcat/webapps -v /root/tomcat/conf:/usr/local/tomcat/conf -v /root/tomcat/logs:/usr/local/tomcat/logs tomcat
此时如果浏览器访问404, 则需要再次进入 tomcat 容器:
docker exec -it tomcat-test1 /bin/bash
删除 webapps 文件夹,并重命名 webapps.dist 为 webapps:
rm -r webapps
mv webapps.dist webapps
访问浏览器如下:
参考资料:
https://www.cnblogs.com/xiaozhang666/p/12382114.html
自我控制是最强者的本能-萧伯纳