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
Mongo连接器无法连接Elasticsearch的MongoDB副本集_Mongodb_Docker_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Mongodb,Docker,elasticsearch" /> elasticsearch,Mongodb,Docker,elasticsearch" />

Mongo连接器无法连接Elasticsearch的MongoDB副本集

Mongo连接器无法连接Elasticsearch的MongoDB副本集,mongodb,docker,elasticsearch,Mongodb,Docker,elasticsearch,昨天,我根据以下说明使用Docker compose创建了一个副本集: 所有的容器都会创建,我也设法为数据播种,所以使用Robo3T我可以查看我的收藏。我这样做是因为我需要mongo连接器将MongoDB连接到Elasticsearch 这是docker-compose.yml文件: version: '3' services: mongo-rs0-1: image: "mongo-start" build: ./mongo-rs0-1 ports: -

昨天,我根据以下说明使用Docker compose创建了一个副本集:

所有的容器都会创建,我也设法为数据播种,所以使用Robo3T我可以查看我的收藏。我这样做是因为我需要mongo连接器将MongoDB连接到Elasticsearch

这是docker-compose.yml文件:

version: '3'
services:
  mongo-rs0-1:
    image: "mongo-start"
    build: ./mongo-rs0-1
    ports:
      - "27017:27017"
    volumes:
      - ./mongo-rs0-1/data:/data/db
    depends_on:
      - "mongo-rs0-2"
      - "mongo-rs0-3"

  mongo-rs0-2:
    image: "mongo:3.6.4"
    command: --replSet rs0 --smallfiles --oplogSize 128
    ports:
      - "27018:27017"
    volumes:
      - ./mongo-rs0-2/data:/data/db

  mongo-rs0-3:
    image: "mongo:3.6.4"
    command: --replSet rs0 --smallfiles --oplogSize 128
    ports:
      - "27019:27017"
    volumes:
      - ./mongo-rs0-3/data:/data/db

  setup-rs:
    image: "setup-rs"
    build: ./setup
    depends_on:
      - "mongo-rs0-1"

  mongo-db-seeder:
    build:
      context: ./mongo-db-seed
      dockerfile: ./Dockerfile.dev
    volumes:
      - ./mongo-db-seed/seeddata:/opt/seeddata
    depends_on:
      - "web-app"
    command: "./import_mongo.sh"

  adminmongo:
    image: "mrvautin/adminmongo"
    ports:
      - "1234:1234"

  #Test Application
  web-app:
    image: docker-node-express-mongoreplicaset-app
    build: ./web-site
    ports:
      - "3000:3000"
    volumes:
      - ./web-site:/usr/src/app
      - /usr/src/app/node_modules
    depends_on:
      - "setup-rs"
这是配置该副本集的replica.js

rsconf = {
  _id : "rs0",
  members: [
    { _id : 0, host : "mongo-rs0-1:27017" },
    { _id : 1, host : "mongo-rs0-2:27017" },
    { _id : 2, host : "mongo-rs0-3:27017" }
  ]
}

rs.initiate(rsconf);

rs.conf();
我安装了Elasticsearch,它正在端口9200上运行,等待建立索引

这是我在OSX上运行的主机文件(etc/hosts)

##  
# Host Database  
#  
# localhost is used to configure the loopback interface  
# when the system is booting.  Do not change this entry.  
##  
127.0.0.1   localhost  
255.255.255.255 broadcasthost  
::1             localhost
但是,当我运行此命令时(容器和Elasticsearch都在运行)

mongo连接器-m localhost:27017-t localhost:9200-d elastic2_文档管理器

我得到这个错误:

ServerSelectionTimeoutError:mongo-rs0-3:27017:[错误号8]节点名称或 servname提供或未知,mongo-rs0-1:27017:[Errno 8]节点名 nor servname提供或未知,mongo-rs0-2:27017:[错误号8] 提供了nodename或servname,或未知


今天早上我做了一个很好的搜索,但是我找不到任何指向这个问题的东西。副本集似乎运行正常,Elasticsearch正在运行,但缺少一些内容。

您能否提供您的
/etc/hosts
?您好,谢谢您的评论,在延迟发布中表示歉意。我在这里使用MacOSX,所以我将把它添加到上面的问题中。