NPE_ 2023-12-18 14:10 采纳率: 77.4%
浏览 16

docker 容器访问不了后端nginx服务

nginx 部署在docker 中并且使用了同一个网桥,前端代码发上去了,接口访问路径使用的是docker容器名称去访问接口,但是现在接口不通,我不知道为什么?

img


这是接口访问路径使用的是容器名称

img


这两个容器都在同一个网桥下我不知道为什么接口不通?希望可以帮我解答疑问

  • 写回答

1条回答 默认 最新

  • &春风有信 2023-12-21 11:42
    关注

    当你在Docker中使用同一个网桥,并且尝试通过容器名称来访问其他容器的接口时,可能会遇到一些问题。以下是一些可能的原因和解决方法:

    Docker容器没有正确配置网络:确保你的Docker容器使用了正确的网络配置。默认情况下,Docker容器使用bridge网络模式,这正是你提到的同一个网桥。确保你的容器正确连接到这个网桥。
    容器名称解析问题:当你使用容器名称来访问其他容器时,Docker会尝试通过DNS解析该名称。确保你的Docker安装和配置正确,并且能够解析容器名称。
    端口映射问题:确保你正确地将容器的端口映射到主机的端口。例如,如果你的容器内的应用监听在8080端口,你需要在运行容器时使用-p标志将其映射到主机的某个端口(例如80)。
    bash
    docker run -p 80:8080 your_image_name
    防火墙或安全组规则:确保没有防火墙或安全组规则阻止了从主机到Docker容器的通信。
    检查应用日志:查看你的应用日志,看是否有任何错误或警告信息。这可能会给你提供关于为什么接口不通的线索。
    Docker网络设置:你可以尝试更详细地检查Docker的网络设置,确保没有其他网络配置问题。
    使用docker inspect命令:你可以使用docker inspect命令来查看容器的详细信息,包括网络设置和端口映射。
    bash
    docker inspect your_container_id_or_name
    使用docker network inspect命令:你可以检查Docker网桥的详细信息,看是否有任何异常。
    bash
    docker network inspect bridge

    希望这些建议能帮助你找到问题的原因并解决它。如果你能提供更多关于你的设置和配置的信息,我可能能提供更具体的帮助。

    评论

报告相同问题?

问题事件

  • 创建了问题 12月18日

悬赏问题

  • ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
  • ¥20 关于web前端如何播放二次加密m3u8视频的问题
  • ¥20 spring boot集成mqtt的使用问题
  • ¥15 使用百度地图api 位置函数报错?
  • ¥15 metamask如何添加TRON自定义网络
  • ¥66 关于川崎机器人调速问题
  • ¥15 winFrom界面无法打开
  • ¥30 crossover21 ARM64版本安装软件问题
  • ¥15 mymetaobjecthandler没有进入
  • ¥15 mmo能不能做客户端怪物