Как упомянуто в документации, вы должны установить 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"
]
},