kibana и elasticsearch не подключаются под docker в одном контейнере

#docker #elasticsearch #kibana

#docker #elasticsearch #kibana

Вопрос:

Использование файла docker-compose.yml по ссылке (онлайн изменена версия 7.9.1. на 7.9.2)

как показано ниже, полное содержимое docker-compose.yml;

 version: '2.2'
services:
  es01:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.9.2
    container_name: es01
    environment:
      - node.name=es01
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es02,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data01:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
    networks:
      - elastic

  es02:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.9.2
    container_name: es02
    environment:
      - node.name=es02
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data02:/usr/share/elasticsearch/data
    ports:
      - 9201:9201
    networks:
      - elastic

  es03:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.9.2
    container_name: es03
    environment:
      - node.name=es03
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es02
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data03:/usr/share/elasticsearch/data
    ports:
      - 9202:9202
    networks:
      - elastic

  kib01:
    image: docker.elastic.co/kibana/kibana:7.9.2
    container_name: kib01
    ports:
      - 5601:5601
    environment:
      ELASTICSEARCH_URL: http://es01:9200
      ELASTICSEARCH_HOSTS: http://es01:9200
    networks:
      - elastic

volumes:
  data01:
    driver: local
  data02:
    driver: local
  data03:
    driver: local

networks:
  elastic:
    driver: bridge
  

при запуске docker -создайте здесь журналы в окне командной строки;
введите описание изображения здесь

Комментарии:

1. Запуск Elastic занимает некоторое время, вы уверены, что он готов?

2. @jujule да, один контейнер работает и работает в течение нескольких секунд нормально,

Ответ №1:

Кажется, что оба контейнера запускаются одновременно, поэтому kibana не может идентифицировать контейнер elasticsearch.

в службе Kibana: добавьте следующие параметры в файл docker-compose.yml

depends_on:

  • среда es01:
  • ‘ELASTICSEARCH_HOSTS=http: // es01:9200’
  • ‘XPACK_MONITORING_UI_CONTAINER_ELASTICSEARCH.ВКЛЮЧЕНО = false’

Вместо dict . попробуйте использовать списки в env. variable