elasticsearch 为什么docker swarm上的elasticsearch需要transport.host=localhost设置?,elasticsearch,docker-compose,docker-swarm,elasticsearch,Docker Compose,Docker Swarm" /> elasticsearch 为什么docker swarm上的elasticsearch需要transport.host=localhost设置?,elasticsearch,docker-compose,docker-swarm,elasticsearch,Docker Compose,Docker Swarm" />

elasticsearch 为什么docker swarm上的elasticsearch需要transport.host=localhost设置?

elasticsearch 为什么docker swarm上的elasticsearch需要transport.host=localhost设置?,elasticsearch,docker-compose,docker-swarm,elasticsearch,Docker Compose,Docker Swarm,我正试图在码头工人群上运行Elasticsearch。目前它作为单节点集群工作,但仅当包含transport.host=localhost设置时才起作用。下面是docker compose.yml的主要部分: version: "3" services: elasticsearch: image: "elasticsearch:7.4.1" #(base version)

我正试图在码头工人群上运行Elasticsearch。目前它作为单节点集群工作,但仅当包含
transport.host=localhost
设置时才起作用。下面是docker compose.yml的主要部分:

version: "3"

services:
    elasticsearch:
        image: "elasticsearch:7.4.1"                                          #(base version)
        hostname: elasticsearch
        ports:
            - "9200:9200"
        environment:
            - cluster.name=elasticsearch
            - bootstrap.memory_lock=true
            - ES_JAVA_OPTS=-Xms512m -Xmx512m
            - transport.host=localhost
        volumes:
            - "./elasticsearch/volumes:/usr/share/elasticsearch/data"
        networks:
            - logger_net

volumes:
    logging:

networks:
    logger_net:
        external: true
上述配置将导致黄色集群状态(因为某些索引需要额外的副本)

当我在transport.host设置中使用Elasticsearch docker容器的IP时,或者没有
transport.host=localhost
设置时,Elasticsearch不可用

我认为使用transport.host=localhost设置是错误的。docker swarm中Elasticsearch的正确配置是否可用