docker compose网络“U模式:”;主持人;不起作用

docker compose网络“U模式:”;主持人;不起作用,docker,docker-compose,Docker,Docker Compose,我的停靠应用程序需要访问本地主机网络上的某些内容,如果没有网络\u模式:“主机” 如果我把网络模式注释掉:“主机”我的应用程序可以完美运行。如果我重新添加它,它仍会运行,但在上不再可访问 编辑:我刚刚在Ubuntu上测试了一个hello world,它可以正常工作,但在mac上不行,mac似乎不能使用网络模式:“主机”是的,在写这篇文章的时候,mac肯定有问题,问题是mac中的docker使用了一个linux虚拟机来存放容器,因此,当您使用网络\u模式时:“主机”仅对VM的网络有效,而对您的ma

我的停靠应用程序需要访问本地主机网络上的某些内容,如果没有
网络\u模式:“主机”

如果我把
网络模式注释掉:“主机”
我的应用程序可以完美运行。如果我重新添加它,它仍会运行,但在上不再可访问


编辑:我刚刚在Ubuntu上测试了一个hello world,它可以正常工作,但在mac上不行,mac似乎不能使用
网络模式:“主机”

是的,在写这篇文章的时候,mac肯定有问题,问题是mac中的docker使用了一个linux虚拟机来存放容器,因此,当您使用
网络\u模式时:“主机”
仅对VM的网络有效,而对您的mac:(更多信息)


或者,不要使用
网络模式:“主机”
,而是将其保留在网桥中(默认)然后将您的服务配置为使用host.docker.internal:xxxx

localhost:3000,而不是访问localhost:xxxx,仍然404您是从同一台机器还是不同的机器访问URL?在我的本地mac上,同一台机器。我知道端口3000正在docker内部侦听,因为我可以从docker exec进行卷曲,但不能从outsi进行卷曲解除docker composw psno dockerfile在repo内的输出docker。没有docker文件上下文:。这没有用
version: '3.4'
services:
  app:
    network_mode: "host"
    image: node:latest
    volumes:
      - .:/usr/app
      - node_modules:/usr/app/node_modules
    working_dir: /usr/app
    ports:
      - 3000:3000

volumes: 
  node_modules: