更好的阅读体验:点这里 ( www.doubibiji.com
)
9 常用容器部署-Tomcat
下面介绍一下常用容器的部署。可以先简单了解下,用到再来详细查看。
在 Docker 中部署 Tomcat 容器。
9.1 搜索镜像
首先搜索镜像,命令:
docker search tomcat
找到官方镜像:
9.2 拉取镜像
找到官方镜像,执行拉取,命令:
docker pull tomcat
9.3 启动容器
镜像下载完成就,就可以启动容器了。使用后台模式启动容器,并映射 8080 端口,并进行相应的容器卷挂载。
命令:
docker run -d -p 8080:8080 --name tomcat \
-v /home/doubi/tomcat/webapps:/usr/local/tomcat/webapps \
-v /home/doubi/tomcat/logs:/usr/local/tomcat/logs tomcat
解释一下:
-d
:后台运行;-p 8080:8080
:端口映射,宿主机的8080端口映射到容器的8080端口;--name tomcat
:给容器起个名字,自己随便起,这里叫tomcat;-v /home/doubi/tomcat/webapps:/usr/local/tomcat/webapps
:将宿主机的/home/doubi/tomcat/webapps
目录与容器的/usr/local/tomcat/webapps
目录进行映射,项目在这个目录下,这样将项目放到宿主机的目录下就可以了;-v /home/doubi/tomcat/logs:/usr/local/tomcat/logs
:将宿主机的/home/doubi/tomcat/logs
与容器的/usr/local/tomcat/logs
目录进行映射,日志在这个目录下,这样在宿主机就可以查看到 tomcat 的日志了;tomcat
:使用的镜像的名称。
9.4 存在的坑
容器启动后,访问宿主机的 8080 端口,会报 404 错误。
为什么呢?
tomcat 访问到的8080带三脚猫的首页,是在 webapps 目录下的,但是新版的 tomcat 的 webapps 下面是空,静态资源被放置到 webapps.dist
目录下了,所以就找不到首页了。
怎么处理呢?
我们可以进入到容器,将webapps.dist
目录下的内容拷贝到 webapps
目录下面。
# 进入容器
docker exit -it tomcat容器ID /bin/bash
# 进入到webapps.dist/目录
cd webapps.dist/
# 将webapps.dist/目录下的内容拷贝到webapps/目录下
cp -r * ../webapps/
拷贝完成后,重新刷新页面,出现了三脚猫。
大功告成!