請提供docker配置以獲得定制的答案。猜測:如果您的容器不使用主機網絡,而是使用網橋網絡(默認情況下),localhost指向nginx容器的localhost,而不是您的主機系統。 # Using bridge network, if omitted will be same behaviorservices: service_name: ports: - "8080:8080" # Portmapping, maps from Container to HOST networks: network_name:networks: network_name: 通過該設置,在主機上運行或使用network_mode: "host"的nginx可以到達您的服務@localhost:8080。但是,如果nginx在上述容器中運行,nginx就無法訪問這樣的服務。Inter-container-communication正在使用自己的(虛擬)網絡,每個容器都是該網絡中的“網絡適配器”。因此有了自己的IP-Address。為了便于處理,還有一個DNS-Server正在運行,將網絡別名解析為IP。 因此,使用proxy_pass http:\\DNS-NAME:8080\或proxy_pass http:\\DOCKER-CONTAINER-IP:8080\到達docker網絡內的容器。使用