目录

  • 查看版本
  • 官方部署
  • 运行方式(RUN)
  • 防火墙设置
  • demo -静态文件发布测试
  • 效果


查看版本

网站https://hub.docker.com/

打开上面网页搜索:Tomcat

dockerfile 映射动态目录 docker 映射路径_端口号

有绿色 盾牌标识的,说明是有tomcat 官方上传上去的

点击进去,如下

dockerfile 映射动态目录 docker 映射路径_docker_02

官方部署

下载

docker pull tomcat

dockerfile 映射动态目录 docker 映射路径_docker_03

运行方式(RUN)

  1. 不映射目录
docker run -id  -p 8080:8080 --name tomcat01 tomcat:latest

dockerfile 映射动态目录 docker 映射路径_docker_04

  1. 映射目录
docker run -id  -p 8080:8080 --name tomcat01 -v /home/tomcat/webapps:/usr/local/tomcat/webapps tomcat01 tomcat:latest

dockerfile 映射动态目录 docker 映射路径_dockerfile 映射动态目录_05

防火墙设置

如果出现如下问题,可能防火墙端口没有开,检查下防火墙(我使用的是腾讯云服务器,所以需设置 腾讯云服务器的防火墙和系统本身的防火墙设置)

dockerfile 映射动态目录 docker 映射路径_docker_06

腾讯云防火墙端口开放设置

dockerfile 映射动态目录 docker 映射路径_tomcat_07

**centos开发端口号 **

1 检查已经开发的防火墙端口号
firewall-cmd --list-ports
2 开发指定端口号 8080
firewall-cmd --zone=public --add-port=8080/tcp --permanent 
--zone=作用域
--add-port=开发的防火墙
--permanent 永久生效
3 重新加载防火墙-使其生效
firewall-cmd --reload

闭坑锦囊

设置好防火墙-会出现的问题如下-因为docker是最小按照,所以weapps 目录下没有默认程序

dockerfile 映射动态目录 docker 映射路径_端口号_08

解决方案

  1. 进入容器
docker exec -it tomcat01 /bin/bash

dockerfile 映射动态目录 docker 映射路径_tomcat_09

  1. 查看 webapps 发现这个下面没有程序
  2. dockerfile 映射动态目录 docker 映射路径_端口号_10

  3. 可以讲 webapps.dist 目录下的 程序复制到 webapps下面

dockerfile 映射动态目录 docker 映射路径_端口号_11

cp -r ./*   /usr/local/tomcat/webapps  // 把当前目录下的所有内容复制大搜 webapps 下

dockerfile 映射动态目录 docker 映射路径_docker_12

  1. 然后 从新访问 刚才的地址,显示如下:代表部署成功

退出容器

// 这样退出,tomcat 不受影响
exit

demo -静态文件发布测试

新建jianli文件夹

dockerfile 映射动态目录 docker 映射路径_tomcat_13

新建 mianshiziliao.html文件

dockerfile 映射动态目录 docker 映射路径_tomcat_14

效果

dockerfile 映射动态目录 docker 映射路径_tomcat_15