linux - NGINX docker 容器无法在网络浏览器中访问

标签 linux amazon-web-services docker devops

我已经部署了这个docker容器。

docker container run -d -p 8080:80 --name my-nginx2 --network my-net nginx:latest

当我执行 curl localhost:8080 时,我能够访问它。然而,当我输入我的 <public-address>:8080它不工作。我无法在网络浏览器上访问它。

我正在 AWS 上运行 Red hat 8 ec2 实例。我的安全组是这样的。我不确定这是否与SG有关。

enter image description here

如果您有任何疑问,请告诉我。
谢谢。

最佳答案

根据您分享的镜像,您只允许端口 80 和 22 上的流量;

当您使用 -p :8080:80 执行 docker run 命令时选项,您基本上是在告诉您的实例监听 8080 并将流量转发到端口 80 上的容器;

您有两个选择:
使用 -p 80:80 启动容器选项,因此端口 80 已被允许,然后尝试在浏览器中访问您的网络应用程序 <instance-external-ip-address>:80

第二个选项是添加防火墙规则以允许端口 8080 进入然后在浏览器中访问您的网络应用程序 <instance-external-ip-address>:8080

关于linux - NGINX docker 容器无法在网络浏览器中访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63395385/

相关文章:

scala - AWS EB部署-我的应用程序在哪里?

sql-server - .NET Core API 无法通过 docker-compose 连接到数据库

ruby - LookController#at 中的参数错误

Java:-Dhttps.proxyHost 未被使用

linux - 通过 Cygwin 安装 Gearman 时出现库文件问题

amazon-web-services - 通过 IP 限制对 CloudFront 的访问

amazon-web-services - 证书过期和 SHA-1

docker - 如何停止 docker 的虚拟机以便安装 VirtualBox?

python - 将 google cloud speech api 与 tornado 服务器一起使用时出现多个 CLOSE_WAIT。打开的文件太多错误

linux - 如何在NAO机器人上接收原始蓝牙包