首先恭喜你,看到这个界面说明Tomcat是OK的,只是没有访问到自己想要的页面。
1.如果是在学习Docker的tomcat容器部署,出现上述错误,则是镜像本身的问题,换个镜像就可以了。

如果不想换镜像,通过 # docker ps 获取你Tomcat容器的ID( 复制ID ),然后再通过 # docker exec -it  Tomcat容器ID ,这个命令,进入容器内部, # cd webapps ,随意创建个文件夹 web_demo ,然后里面随意写一个index.html。然后再通过地址栏访问:http://192.168.31.191:8080/web_demo/index.html 此时自然是可以访问通的。

2.如果是在常规访问,出现的这个错误,那么道理是一样的,要进入你的部署目录检查你访问地址对应的工程目录,看一下webapps下面的工程是否部署成功。

该错误,本身说明Tomcat是通的,仅仅是你因为你访问的路径不对( 后面缺失一些具体路径, 比如忘记带工程名称了 ),或者被访问的路径下缺失默认页面index.html或者index.jsp。

1.用标准流程停掉tomcat

#docker ps 查看容器列表,然后根据容器ID移除
#docker stop 46ac1401f5b8 停掉服务后,再重新移除
#docker rm 46ac1401f5b8  如果容器正在运行会被要求先停掉服务

2.删除/移除指定版本的Tomcat镜像

docker rmi  tomcat:latest  移除指定镜像

注:后面的latest是Tomcat镜像标签,用命令: docker images 可以获取(第二列)

3.重新下载镜像

docker pull  tomcat:8.5.46-jdk8-openjdk   该版本镜像,可以访问到tomcat首页

4.宿主机8000重新关联容器中的Tomcat8080端口

docker run -p 8000:8080 -d tomcat:8.5.46-jdk8-openjdk 后台阻塞运行(如果不带-p,则前台窗口运行)

注:如果只安装了一个版本的Tomcat后面的标签(Tomcat版本) 可以不带

5.再次访问

http://192.168.31.191:8000

既然能看到图像界面上的Tomcat版本号,说明很可能是tomcat本身的问题,比如是精简版,默认没有index.jsp(tomcat首页)。如果上述步骤没有界面,则要认真排查一下了

1.本地打开cmd窗口ping一下访问的ip

ping 192.168.31.191

如果不能ping通,则要检查linux的ip配置问题了,可参考: ping不通,点击这里

2.如果能ping通,再telnet一下

telenet 192.168.31.191 8000 成功后是一个纯黑色的界面

如果端口没有通,页面则会直接有错误提示,此时就要检查防火墙等方面的问题了,要么让防火墙给此端口放行,要么关闭防火墙。

提示:如果Windows系统的cmd界面,无法识别telnet命令, 请点击这里

1.放行指定端口

#添加指定需要开放的端口:
firewall-cmd --add-port=8000/tcp --permanent
#重载入添加的端口:
firewall-cmd --reload
#查询指定端口是否开启成功:
firewall-cmd --query-port=8000/tcp

2.放行指定IP

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.31.191"   accept" 
#重新载入
firewall-cmd --reload
iptables -L 查看IP策略

3.关闭防火墙

#systemctl stop firewalld 临时关闭
#systemctl disable firewalld 永久关闭
#systemctl status firewalld 查看状态

telenet 192.168.31.191 8000 能连通后,最后再排查dock和Tomcat本身的问题。问题终将会解决。

首先恭喜你,看到这个界面说明你已经访问成功了。仅仅是tomcat首页没跳出来,是镜像本身的问题,删掉原镜像,换个镜像就可以了。具体原因就是:tomcat本身的问题,比如是精简版,默认没有index.jsp(tomcat首页)这样的一堆文件。 2.自己制作新的镜像(初学者可以尝试一下) 到此这篇关于 Docker Tomcat 为何看不到访问界面的文章就介绍到这了,更多相关 Docker Tomcat 访问内容请搜索软件开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件开发网! 类型 状态报告 消息 请求的 资源 [/chapter06/IndexServlet]不可用 描述 服务器 未能 找到 目标 资源 表示 或者是 不愿 公开 一个 已经 存在 资源 表示 Apache Tomcat /9.0.37 问题原因,浏览器不能直接访问Java文件 问题的解决方法 1、提交表单时遇到此问题 <form name = reg action=/login method=post> <meta charset=UTF-8> 账号:<input type=text name=usernam
报错:Error,关于运行localhost://8080/一直提示:“ 服务器 未能 找到 目标 资源 表示 或者是 不愿 公开 一个 已经 存在 资源 表示 。“的可能问题集合。
IDEA- Tomcat - 服务器 未能 找到 目标 资源 表示 或者是 不愿 公开 一个 已经 存在 资源 表示 1起因2经过3说白了 在学习springMVC的过程中,写了 一个 demo需要部署到本地 Tomcat 上来运行(直接使用IDEA配置本地 tomcat ,不用再手动发war包到 tomcat 目录下)。因为之前用SpringBoot项目比较多(集成了 Tomcat ,不需要额外部署设置;也不需要额外配好多xml),所以这部分可以说是从0学起,踩了好多坑。 出现上面“ 服务器 未能 找到 目标 资源 表示 或者是 不愿 公开 一个 已经 存在 资源
GleamHRM 人力 资源 管理(HRM)系统 Laravel 5.6版本用于创建HRM系统。 该系统的目的是有效管理人力 资源 职能。 每个模块在HRM中执行单独的功能,有助于收集或跟踪信息。 HRM模块可以帮助: PHP 7.2以上版本 最好在本地系统上安装git setup。 下载/克隆后,转到终端/命令行上的项目目录,然后运行composer install或composer.phar install 一旦安装了作曲家,请运行迁移: php artisan migrate 迁移后,运行数据库播种器: php artisan db:seed 完成迁移和播种后,您将拥有默认用户: email: admin@glowlogix.com password: admin Docker 安装 为您选择的操作系统安装 Doc k
要创建 一个 自定义 doc kwidget类,你需要先了解Qt中的 doc kwidget和widget的概念。 Doc kwidget是一种特殊的widget,它可以附加到主窗口的边缘,并可以随时拖动、关闭或重新排列。使用 doc kwidget可以方便地实现一些常见的窗口布局,如多窗口、多文档等。 下面是创建自定义 doc kwidget类的步骤: 1. 创建 一个 新类,继承自Q Doc kWidget类。 2. 在类的构造函数中设置 doc kwidget的属性,如标题、位置、大小等。 3. 在类中定义需要显示的widget,并将其设置为 doc kwidget的中心widget,以便在 doc kwidget中显示。 4. 实现需要的功能,如添加按钮、响应事件等。 下面是 一个 简单的示例代码: ```cpp class My Doc kWidget : public Q Doc kWidget public: My Doc kWidget(QWidget *parent = nullptr) : Q Doc kWidget(parent) //设置标题和位置 setWindowTitle("My Doc k Widget"); setAllowedAreas(Qt::Left Doc kWidgetArea | Qt::Right Doc kWidgetArea); //创建需要显示的widget QWidget *centralWidget = new QWidget(this); QLabel *label = new QLabel("Hello, world!", centralWidget); QVBoxLayout *layout = new QVBoxLayout(centralWidget); layout->addWidget(label); centralWidget->setLayout(layout); //设置中心widget setWidget(centralWidget); 在主窗口中使用这个自定义 doc kwidget类: ```cpp My Doc kWidget * doc kWidget = new My Doc kWidget(this); add Doc kWidget(Qt::Left Doc kWidgetArea, doc kWidget); 这样就可以在主窗口左侧添加 一个 名为"My Doc k Widget"的 doc kwidget,并显示"Hello, world!"的标签。
Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)} 73745 Docker报错:OCI runtime exec failed: exec failed: container_linux.go:380: starting container process详解 49460 Maven锦集:在IDEA中配置环境变量 | 无法将“mvn”项识别为 cmdlet、函数、脚本文件或可运行程序的名称 | CommandNotFound | [ERROR] 2301_79835684: IDEA自带的maven里根本没有apache-maven Docker学习:容器五种(3+2)网络模式 | bridge模式 | host模式 | none模式 | container 模式 | 自定义网络模式详解 不死炎炎: 想请问一下,是否可以虚拟出容器自己的网卡,但不是桥接模式,然后自己的虚拟网卡链接到宿主机的网卡上,与宿主机处于同一网段? JAVA多线程:狂抓 join()方法到底会不会释放锁,给你彻底介绍清楚(三) Aisnice: 再起一个线程c获取mthread锁进行打印才能证明,这样主线程锁住m,m.join释放m,这样线程c会在m.join释放锁m之后输出,之前不输出 JAVA多线程:狂抓 join()方法到底会不会释放锁,给你彻底介绍清楚(三) Aisnice: 他的例子并没有本质验证,应该再起一个线程c获取mthread进行打印才能证明,这样主线程锁住m,m.join释放m,这样线程c会在m.join释放锁之后输出 wvp避坑指南(1),总有一款适合你:DateUtil类Instant.from报日期转换错误 | zlm仍在线,点播超时 | 前台编辑、删除、新增操作无效 |浏览器403forbidden 打包报错 IDEA工具避坑指南(十一):git导入SpringBoot后|不识别依赖 |大量爆红 | 无法启动 IDEA工具避坑指南(十):git拉取java项目后,拉取后的工程目录下只有.git和.idea文件,没有src或java目录|拉取的maven工程不被识别为maven项目