【问题标题】:Created docker image for spring boot app, not accessible为 Spring Boot 应用程序创建了 Docker 映像,无法访问
【发布时间】: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,但我没有看到任何网页。

我已经为 ec2 实例打开了 9000 端口。

为什么会有 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


【解决方案1】:

这是一个spring boot jsp问题。我已将 jsps 放在 webapp 文件夹中,当我创建一个可执行的 jar 文件时,没有复制 jsps。因此创建了一个战争文件并重新部署。有效。解决了!

【讨论】:

  • 更好地描述解决问题的方法,而不是让你的问题有一些价值。
猜你喜欢
  • 1970-01-01
  • 2019-08-28
  • 1970-01-01
  • 1970-01-01
  • 2019-07-31
  • 2021-06-12
  • 1970-01-01
  • 2019-02-21
  • 1970-01-01
相关资源
最近更新 更多