JAX-RS Rest 服务在 docker 中访问时出现 "HTTP Status 404 – Not Found" 错误 tomcat
JAX-RS Rest service giving "HTTP Status 404 – Not Found" error tomcat while accessing in docker
我在使用 docker 访问休息服务时遇到问题,因为 http://192.168.99.100:8080/rest/clients.I am getting HTTP Status 404 – Not Found. While without docker I have access the rest service like http://localhost:8080/rest/clients.Please 有人帮助解决了我的问题。
这是我的 docker-compose 文件,
version: '3'
services:
tomcat:
container_name: tomcat_docker
image: tomcat:latest
environment:
- TOMCAT_USERNAME=admin
- TOMCAT_PASSWORD=secret
ports:
- 8080:8080
volumes:
- /docker/AW317/TaskmanagerDocker-03212018/tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml
- /docker/AW317/TaskmanagerDocker-03212018/TaskManager.war:/usr/local/tomcat/webapps/TaskManager.war
command: ["/usr/local/tomcat/bin/catalina.sh", "run"]
links:
- db:mysql
db:
container_name: mysql_docker
image: mysql
ports:
- 53306:3306
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
我试图覆盖 tomcat-users.xml 但无济于事。
任何人都可以在这个问题上帮助我吗?我错过了什么?
我刚刚使用卷路径覆盖 docker 中的 context.xml 文件,问题已解决,
<?xml version="1.0" encoding="UTF-8"?>
<Context antiResourceLocking="true" privileged="true" >
<!--<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />-->
</Context>
现在我可以访问休息服务了。
编辑:
您可以覆盖 docker-compose 文件中的 context.xml,如下所示,
volumes:
- <path to docker whaere it is located>/context.xml:/usr/local/tomcat/webapps/manager/META-INF/context.xml
您可以将 context.xml 文件放在您的项目目录中。
我在使用 docker 访问休息服务时遇到问题,因为 http://192.168.99.100:8080/rest/clients.I am getting HTTP Status 404 – Not Found. While without docker I have access the rest service like http://localhost:8080/rest/clients.Please 有人帮助解决了我的问题。
这是我的 docker-compose 文件,
version: '3'
services:
tomcat:
container_name: tomcat_docker
image: tomcat:latest
environment:
- TOMCAT_USERNAME=admin
- TOMCAT_PASSWORD=secret
ports:
- 8080:8080
volumes:
- /docker/AW317/TaskmanagerDocker-03212018/tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml
- /docker/AW317/TaskmanagerDocker-03212018/TaskManager.war:/usr/local/tomcat/webapps/TaskManager.war
command: ["/usr/local/tomcat/bin/catalina.sh", "run"]
links:
- db:mysql
db:
container_name: mysql_docker
image: mysql
ports:
- 53306:3306
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
我试图覆盖 tomcat-users.xml 但无济于事。 任何人都可以在这个问题上帮助我吗?我错过了什么?
我刚刚使用卷路径覆盖 docker 中的 context.xml 文件,问题已解决,
<?xml version="1.0" encoding="UTF-8"?>
<Context antiResourceLocking="true" privileged="true" >
<!--<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />-->
</Context>
现在我可以访问休息服务了。
编辑:
您可以覆盖 docker-compose 文件中的 context.xml,如下所示,
volumes:
- <path to docker whaere it is located>/context.xml:/usr/local/tomcat/webapps/manager/META-INF/context.xml
您可以将 context.xml 文件放在您的项目目录中。