Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法从docker compose文件中定义的其他服务连接到nsqd_Docker_Docker Compose_Nsq - Fatal编程技术网

无法从docker compose文件中定义的其他服务连接到nsqd

无法从docker compose文件中定义的其他服务连接到nsqd,docker,docker-compose,nsq,Docker,Docker Compose,Nsq,我有一个连接到nsqd的服务来生成和使用消息。我有连接到它的集成测试(广播地址127.0.0.1),在cli或ide中本地执行它可以很好地工作 然后,我创建了这个服务以支持docker compose,但无法连接到nsqd 下面是我的docker撰写文件 version: '3' services: redis: image: redis:4.0.9-alpine ports: - "6379:6379" nsqlookupd: image: ns

我有一个连接到nsqd的服务来生成和使用消息。我有连接到它的集成测试(广播地址127.0.0.1),在cli或ide中本地执行它可以很好地工作

然后,我创建了这个服务以支持docker compose,但无法连接到nsqd

下面是我的docker撰写文件

version: '3'

services:
  redis:
    image: redis:4.0.9-alpine
    ports:
      - "6379:6379"

  nsqlookupd:
    image: nsqio/nsq:v0.3.8
    command: /nsqlookupd
    ports:
      - "4160:4160"
      - "4161:4161"

  nsqd:
    image: nsqio/nsq:v0.3.8
    command: /nsqd --lookupd-tcp-address=nsqlookupd:4160 --broadcast-address=127.0.0.1
    links:
      - nsqlookupd:nsqlookupd
    ports:
      - "4150:4150"
      - "4151:4151"

  nsqadmin:
    image: nsqio/nsq:v0.3.8
    ports:
      - "4171:4171"
    links:
      - nsqlookupd:nsqlookupd
    command: /nsqadmin --lookupd-http-address=nsqlookupd:4161

  creator:
    build: "creator/"
    depends_on:
      - nsqlookupd
      - nsqd
      - redis
    environment:
      SERVER_ADDR: ":8080"
      NSQ_ADDR: "nsqd:4150"
      NSQ_TOPIC: "driver_locations"
      NSQ_CHANNEL: "ch"
      REDIS: "redis:6379"
    ports:
      - "8080:8080"
现在我不关心本地的测试,只是为了让所有的容器都能正常工作

我已尝试更改广播,删除广播。。。 正如他们在文档中所说,这是我最后一次尝试(基本上更改是命令),但运气不佳:

version: '3'
services:
  redis:
    image: redis:4.0.9-alpine
    ports:
      - "6379:6379"
  nsqlookupd:
    image: nsqio/nsq
    command: /nsqlookupd
    ports:
      - "4160"
      - "4161"
  nsqd:
    image: nsqio/nsq
    command: /nsqd --lookupd-tcp-address=nsqlookupd:4160
    depends_on:
      - nsqlookupd
    ports:
      - "4150"
      - "4151"
  nsqadmin:
    image: nsqio/nsq
    command: /nsqadmin --lookupd-http-address=nsqlookupd:4161
    depends_on:
      - nsqlookupd  
    ports:
      - "4171"
  creator:
    build: "creator/"
    depends_on:
      - nsqlookupd
      - nsqd
      - redis
    environment:
      SERVER_ADDR: ":8080"
      NSQ_ADDR: "nsqd:4150"
      NSQ_TOPIC: "driver_locations"
      NSQ_CHANNEL: "ch"
      REDIS: "redis:6379"
    ports:
      - "8080:8080"
version: '3'
services:
  redis:
    image: redis:4.0.9-alpine
    ports:
      - "6379:6379"
  nsqlookupd:
    image: nsqio/nsq
    command: /nsqlookupd
    ports:
      - "4160"
      - "4161"
  nsqd:
    image: nsqio/nsq
    command: /nsqd --lookupd-tcp-address=nsqlookupd:4160
    depends_on:
      - nsqlookupd
    ports:
      - "4150"
      - "4151"
  nsqadmin:
    image: nsqio/nsq
    command: /nsqadmin --lookupd-http-address=nsqlookupd:4161
    depends_on:
      - nsqlookupd  
    ports:
      - "4171"
  creator:
    build: "creator/"
    depends_on:
      - nsqlookupd
      - nsqd
      - redis
    environment:
      SERVER_ADDR: ":8080"
      NSQ_ADDR: "nsqd:4150"
      NSQ_TOPIC: "driver_locations"
      NSQ_CHANNEL: "ch"
      REDIS: "redis:6379"
    ports:
      - "8080:8080"

缓存问题,很抱歉:facepalm:

我说它不工作(删除广播)它是

我已尝试更改广播,删除广播。。。 正如他们在文档中所说,这是我最后一次尝试(基本上更改是命令),但运气不佳:

version: '3'
services:
  redis:
    image: redis:4.0.9-alpine
    ports:
      - "6379:6379"
  nsqlookupd:
    image: nsqio/nsq
    command: /nsqlookupd
    ports:
      - "4160"
      - "4161"
  nsqd:
    image: nsqio/nsq
    command: /nsqd --lookupd-tcp-address=nsqlookupd:4160
    depends_on:
      - nsqlookupd
    ports:
      - "4150"
      - "4151"
  nsqadmin:
    image: nsqio/nsq
    command: /nsqadmin --lookupd-http-address=nsqlookupd:4161
    depends_on:
      - nsqlookupd  
    ports:
      - "4171"
  creator:
    build: "creator/"
    depends_on:
      - nsqlookupd
      - nsqd
      - redis
    environment:
      SERVER_ADDR: ":8080"
      NSQ_ADDR: "nsqd:4150"
      NSQ_TOPIC: "driver_locations"
      NSQ_CHANNEL: "ch"
      REDIS: "redis:6379"
    ports:
      - "8080:8080"
version: '3'
services:
  redis:
    image: redis:4.0.9-alpine
    ports:
      - "6379:6379"
  nsqlookupd:
    image: nsqio/nsq
    command: /nsqlookupd
    ports:
      - "4160"
      - "4161"
  nsqd:
    image: nsqio/nsq
    command: /nsqd --lookupd-tcp-address=nsqlookupd:4160
    depends_on:
      - nsqlookupd
    ports:
      - "4150"
      - "4151"
  nsqadmin:
    image: nsqio/nsq
    command: /nsqadmin --lookupd-http-address=nsqlookupd:4161
    depends_on:
      - nsqlookupd  
    ports:
      - "4171"
  creator:
    build: "creator/"
    depends_on:
      - nsqlookupd
      - nsqd
      - redis
    environment:
      SERVER_ADDR: ":8080"
      NSQ_ADDR: "nsqd:4150"
      NSQ_TOPIC: "driver_locations"
      NSQ_CHANNEL: "ch"
      REDIS: "redis:6379"
    ports:
      - "8080:8080"