【发布时间】:2020-01-08 20:16:09
【问题描述】:
我为我的 Spring Boot 应用“payalbnsl/shoppingapp”创建了一个 docker 映像
首先我启动 mongodb 的容器:“docker run -d -p 27017:27017 --name mongodb --network n1 -e MONGO_INITDB_ROOT_USERNAME=mongodb -e MONGO_INITDB_ROOT_PASSWORD=mongodb -e MONGO_INITDB_DATABASE=levent -e MONGO_USERNAME=mongodb - e MONGO_PASSWORD=mongodb mongo --auth"
然后我运行图像:“docker run -d --network n1 -p 9000:9000 payalbnsl/shoppingapp:1”
当我尝试访问 URL“http://13.233.154.209:9000”时,它会重定向到“http://13.233.154.209:9000/products”,就像它应该编码的那样。但我不断收到 404 错误。没有页面显示。
在本地运行和使用 docker 在 ec2 上运行时的日志完全相同
但是在本地我可以看到网页 在 ec2 上运行时,我得到这个页面: 虽然我刚刚输入了http://13.233.154.209:9000,但它在生产中重定向到http://13.233.154.209:9000/products,但我没有看到任何网页。
为什么会有 404,我无法理解。我正在使用 JSP 作为前端。
应用程序已成功连接到 mongo。两者都在桥接网络 n1 上。我在这个端口上启用了防火墙。即使我使用 docker 在本地运行此应用程序,它也会给出相同的 404。在任何实例上,我都会得到 404。
对我来说,“curl -i --unix-socket /var/run/docker.sock http://localhost/containers/json”也有效,而“curl -i --unix-socket /var/run/docker.sock @ 987654330@" 给出 404。不确定它的确切含义。
任何帮助将不胜感激!
谢谢, 支付宝
【问题讨论】:
-
我会调查您的应用程序以及为什么它在您不期望的情况下返回 404。检查它的日志和代码,并考虑用这些来扩展你的答案。
-
更新了问题的更多细节
标签: spring-boot docker