docker-elasticsearch&x2B;kibana从保存的对象开始
我正在使用docker compose启动elasticsearch和kibana 一切都很好,但我也需要从保存的对象开始(使用仪表盘、可视化、索引等) 有人能帮忙吗?我如何开始做所有事情(elasticsearch和kibana同时保存对象-仪表盘、可视化、索引等) 我的docker撰写文件:docker-elasticsearch&x2B;kibana从保存的对象开始,docker,elasticsearch,docker-compose,kibana,Docker,elasticsearch,Docker Compose,Kibana,我正在使用docker compose启动elasticsearch和kibana 一切都很好,但我也需要从保存的对象开始(使用仪表盘、可视化、索引等) 有人能帮忙吗?我如何开始做所有事情(elasticsearch和kibana同时保存对象-仪表盘、可视化、索引等) 我的docker撰写文件: version: '3.7' services: elasticsearch: image: elasticsearch:7.4.0 restart: on-failure
version: '3.7'
services:
elasticsearch:
image: elasticsearch:7.4.0
restart: on-failure
container_name: elasticsearch
environment:
- node.name=elasticsearch
- discovery.seed_hosts=elasticsearch-cluster
- cluster.initial_master_nodes=elasticsearch,elasticsearch-cluster
- cluster.name=docker-cluster
# - bootstrap.memory_lock=true
# - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
ports:
- 9200:9200
- 9300:9300
networks:
- api-network-driver
elasticsearch-cluster:
image: elasticsearch:7.4.0
container_name: elasticsearch-cluster
environment:
- node.name=elasticsearch-cluster
- discovery.seed_hosts=elasticsearch
- cluster.initial_master_nodes=elasticsearch,elasticsearch-cluster
- cluster.name=docker-cluster
# - bootstrap.memory_lock=true
# - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- elasticsearch-cluster-data:/usr/share/elasticsearch/data
networks:
- api-network-driver
kibana:
image: kibana:7.4.0
container_name: kibana
restart: on-failure
ports:
- 5601:5601
depends_on:
- elasticsearch
environment:
SERVER_NAME: localhost
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
networks:
- api-network-driver
Kibana将数据(仪表板、可视化、设置等)保存到索引[.Kibana]中,该索引位于/usr/share/elasticsearch/data.
您已经映射了此文件夹的卷,因此您的数据将存储在主机上。
您还可以轻松地将所有(仪表板、可视化、设置等)导出到单个.json格式文件中,反之亦然
我还建议尝试AWS的开放发行版,它是开源的,包括安全功能和支持docker compose。谢谢@Orest Gulman,我用这种方式装载卷-./scripts/docker/elasticsearch/:/usr/share/elasticsearch/本地数据。可以再次启动,但我现在的问题是:文件在我的存储库中,每次我再次启动服务时,我的本地文件都会更改。我尝试在卷中使用:ro(只读),但kibana没有启动。您在集群中运行elasticsearch?是的,您可以在问题中看到我的docker compose。我添加了一个docker compose示例,我已经测试过,在我的情况下,重新启动容器后所有数据仍然可用
docker compose reboot
或docker compose down/up
。只有当您指定-v
选项:docker compose down-v
时,它才会删除所有数据。
version: '2.2'
services:
es01:
image: docker.elastic.co/elasticsearch/elasticsearch:7.4.0
container_name: es01
environment:
- node.name=es01
- discovery.seed_hosts=es02
- cluster.initial_master_nodes=es01,es02
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata01:/usr/share/elasticsearch/data
ports:
- 9200:9200
networks:
- esnet
es02:
image: docker.elastic.co/elasticsearch/elasticsearch:7.4.0
container_name: es02
environment:
- node.name=es02
- discovery.seed_hosts=es01
- cluster.initial_master_nodes=es01,es02
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata02:/usr/share/elasticsearch/data
networks:
- esnet
kibana:
image: kibana:7.4.0
container_name: kibana
restart: on-failure
ports:
- 5601:5601
environment:
SERVER_NAME: localhost
ELASTICSEARCH_HOSTS: http://es01:9200
networks:
- esnet
volumes:
esdata01:
driver: local
esdata02:
driver: local
networks:
esnet: