小编Jer*_*eon的帖子

Docker 容器不能通过 localhost 访问,但可以通过 127.0.0.1 访问

问题

我有一个 Docker 服务容器暴露于*:8080.

  • 我无法通过localhost:8080. Chrome /curl无限期挂断。
  • 但是如果我使用任何其他本地IP,我就可以访问容器,例如 127.0.0.1

这让我很困惑,因为在我的hosts文件中,localhost重定向到127.0.0.1.

为什么会这样?它是否以某种方式与 IPv4/IPv6 双栈相关?

环境

我在 PopOS(基于 Ubuntu)上,启用了 Docker Swarm。我正在使用这个测试堆栈文件,traefik.docker-compose.yml

version: '3'
services:
  reverse-proxy:
    image: traefik # The official Traefik docker image
    command: --api --docker # Enables the web UI and tells Traefik to listen to docker
    ports:
      - "80:80"     # The HTTP port
      - "8080:8080" # The Web UI (enabled by --api)
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock # …
Run Code Online (Sandbox Code Playgroud)

networking ipv4 ipv6 docker docker-swarm

5
推荐指数
1
解决办法
2624
查看次数

标签 统计

docker ×1

docker-swarm ×1

ipv4 ×1

ipv6 ×1

networking ×1