Docker 安装Tomcat报404之如何对image定义新镜像

假设当前使用者已经具备docker环境:Docker version 20.10.6, build 370c289

镜像库:hub.docker.com/

虚拟机:VMware IP地址:192.168.1.103

如何安装tomcat,如何安装指定版本的tomcat

  1. 安装最新版本的tomcat命令如下:

    docker pull tomcat 标题所演示的现象使用自该命令而非安装指定版本命令

  2. 如何安装指定版本的tomcat命令如下:

    docker pull tomcat:jdk8-corretto(指定版本)

安装完成如何启动tomcat

docker run -d –name my-tomcat -p 9090:8080 tomcat

容器暴露8080端口,并指定宿主机9090端口与其通信(: 之前是宿主机端口,之后是容器需暴露的端口)

参数 说明
-d , –detach=false 指定容器运行于前台还是后台,默认为false
–name=”” 指定容器名字,后续可以通过名字进行容器管理,links特性需要使用名字
-p , –publish=[] 指定容器暴露的端口

访问报错

http://192.168.1.103:9090

dokcer安装tomcat报错4040.png

进入启动的Tomcat查看原委

docker安装tomcat报404-linux-1.png

进入容器有两种途径操作如下:

  1. 使用 CONTAINER ID :docker exec -it 72391683a6ff /bin/bash
  2. 使用 NAMES :docker exec -it my-tomcat /bin/bash

docker安装tomcat报404-linux-2.png

首先访问tomcat,会加载其默认的webapp文件夹内ROOT文件夹下的index.jsp

仔细观察webapps文件夹为空,而webapps.dist里面确是存放真正访问目录下的内容

如何解决?

  1. 将webapps文件夹命令为: webapps-bak

  2. 将webapps.dist文件夹命名为:webapps

  3. 再次访问http://192.168.1.103:9090

docker安装tomcat报404-linux-3.png

那问题是不是真的解决了呢?

我将当前启动在容器里面的tomcat,stop一下,然后在容器内将其删除,之后重新启动,再次访问http://192.168.1.103:9090

结论:依旧是404,修改无效,

docker安装tomcat报404-linux-4.png

那么问题来了能不能对修改的内容做成新的镜像并给与版本以做标识呢?

注意:当前先不要stop启动的tomcat

docker安装tomcat报404-linux-5.png

重新启动tomcat:

docker run -d –name my-tomcat -p 9090:8080 tomcat:0.1

再次访问http://192.168.1.103:9090

成功~~!

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享