我有一个简单的 Spring Boot 应用程序,其中一个 Controller 返回字符串“hello world”。我创建了 docker 镜像,但在 AWS 上部署它时遇到困难。
我为我的服务创建了实例,添加了安全组并且状态为“UP”,但我无法 ping 我的实例并访问我的 Controller 。
可能是spring boot自动添加tomcat的问题?我可以在本地运行 docker 镜像,它在本地主机上启动
最佳答案
- 验证您正在运行的端口(默认嵌入式 Tomcat 端口为 8080)
- 验证运行 Docker 容器时是否在主机上发布容器端口(例如 docker run -p 8080:8080 myapp)
- 安全组端口需要与您发布到的主机端口匹配(例如 8080)
- 安全组源需要允许来自您的 IP 地址的流量(允许来自以下任意位置的流量:0.0.0.0/0)
- 确保您已将安全性绑定(bind)到 EC2 实例。
- 通过检查容器日志(例如 docker 日志 containerId)来验证您的应用是否正在运行
关于java - Spring Boot 应用程序无法在 AWS 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40960634/