Как мне установить path.repo в Docker compose 3? - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть следующий файл Docker-compose 3:

version: '3'
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.2.4
    container_name: elasticsearch
    ...
    ...
    volumes:
      - /path/to/elasticsearch:/usr/share/elasticsearch/data
      - /path/to/elasticsearch/backup:/opt/elasticsearch/backup
    ports:
      - 9200:9200
    networks:
      - elasticnetwork

Итак, я установил свой path.repo в / path / to /asticsearch / backup.Однако выполнение curl http://127.0.0.1:9200/_nodes/?pretty не приводит к path.repo:

"settings" : {
        ...
        "path" : {
          "logs" : "/usr/share/elasticsearch/logs",
          "home" : "/usr/share/elasticsearch"
        },
        ...
      },

Я ожидаю увидеть "repo" : ["/opt/elasticsearch/backup"] в пути.

Ответы [ 2 ]

0 голосов
/ 22 августа 2019
version: "3"
services:
  elasticsearch:
    image: elasticsearch:6.8.2
    environment:
      - 'path.repo=/opt/elasticsearch/backup'
0 голосов
/ 26 февраля 2019

Как упомянуто в документации, вы должны установить path.repo в elasticsearch.yml файле.Этот файл присутствует в каталоге / usr / share /asticsearch / config / вашего образа.Итак, ваш файл компоновки должен выглядеть примерно так:

version: '3'
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.2.4
    container_name: elasticsearch
    volumes:
      - elastic-data:/usr/share/elasticsearch/data
      - elastic-backup:/usr/share/elasticsearch/backup
      - ./elasticsearch/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
    ports:
      - 9200:9200
    environment:
      discovery.type: single-node
volumes:
  elastic-data:
  elastic-backup:

, а ваш elasticsearch.yml должен иметь их:

cluster.name: "docker-cluster"
network.host: 0.0.0.0

# minimum_master_nodes need to be explicitly set when bound on a public IP
# # set to 1 to allow single node clusters
# # Details: https://github.com/elastic/elasticsearch/pull/17288
# discovery.zen.minimum_master_nodes: 1
path.repo: ["/usr/share/elasticsearch/backup"]

После запуска контейнеров я мог видеть repoв http://127.0.0.1:9200/_nodes/?pretty ответ

"settings" : {
        "cluster" : {
          "name" : "docker-cluster"
        },
        "node" : {
          "name" : "3cUpSf-"
        },
        "path" : {
          "logs" : "/usr/share/elasticsearch/logs",
          "home" : "/usr/share/elasticsearch",
          "repo" : [
            "/usr/share/elasticsearch/backup"
          ]
        },
...