放在docker里的java程序访问不了

我在服务器里新新建了个tomcat的docker,开的端口是8080,使用ip:8080访问时可以看到tomcat的欢迎页面
图片描述

然后我在本地使用maven命令行打包到tomcat里上传也已经成功,在manager页面里也能看到我的程序
图片描述

但是我按照ip:8080/demo的方式来访问的时候提示我404
图片描述

请问这是为什么,我是遗漏了哪里吗
补充:这是docker的日志

Nov 01, 2017 8:54:41 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive /usr/local/tomcat/webapps/deploy.war
Nov 01, 2017 8:54:41 AM org.apache.catalina.loader.WebappClassLoaderBase validateJarFile
INFO: validateJarFile(/usr/local/tomcat/webapps/deploy/WEB-INF/lib/tomcat-embed-core-8.5.20.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
Nov 01, 2017 8:54:41 AM org.apache.catalina.loader.WebappClassLoaderBase validateJarFile
INFO: validateJarFile(/usr/local/tomcat/webapps/deploy/WEB-INF/lib/tomcat-embed-el-8.5.20.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/el/Expression.class
Nov 01, 2017 8:54:41 AM org.apache.catalina.deploy.WebXml setVersion
WARNING: Unknown version string [3.1]. Default version will be used.
Nov 01, 2017 8:54:43 AM org.apache.catalina.startup.TldConfig execute
INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
Nov 01, 2017 8:54:43 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deployment of web application archive /usr/local/tomcat/webapps/deploy.war has finished in 1,973 ms
阅读 5.5k
4 个回答
docker ps 

看看容器是不是挂了

docker logs 容器id

如果挂了贴出你的logs

新手上路,请多包涵

1、端口是否进行了映射
2、查看容器日志

能访问,说明端口映射成功的,容器也没有挂。
从容器日志来看,也是部署成功了的。
进入容器,看看 tomcat内部的日志,看是不是demo的问题。

docker exec <容器id> /bin/bash

如果用的maven的话,你可以使用tomcat7-maven-plugin插件。
用mvn tomcat7:deploy就可以部署。

新手上路,请多包涵

从基本情况来看,demo服务已经部署到tomcat了,而且demo是可以访问的。
浏览器地址输入http://ip:8080/demo访问的对象默认是tomcat/webapp/demo/index.jsp或者index.html,请问你demo工程里面有index.jsp或者index.html吗?
或者你的demo里面有其他页面,在http://ip:8080/demo地址后面追加页面具体路径再试试看。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题