![](/img/trans.png)
[英]How to import CSV or JSON data into Elasticsearch using deviantony/docker-elk
[英]docker-elk - how is it persisting elasticsearch index?
我剛剛開始掌握 Docker 和 docker-compose,試圖為 Elasticsearch 創建一個開發環境,我將在稍后部署它。
我一直在使用docker-elk作為參考,我已經成功地創建了一個有效的 Elasticsearch 容器,為其播種,並在我的項目中使用它。
據我了解,Docker 容器不會持久保存數據,除非您使用 Volumes API 並在容器外部創建一個容器然后訪問的卷(在此處閱讀)。
然而 docker-elk 只使用 Volumes 來共享一個配置 yml 文件,但不知何故,當我再次關閉和打開容器時,我的彈性指數仍然存在。
來自 docker-elk 自述文件:
存儲在 Elasticsearch 中的數據將在容器重啟后持久化,但在容器移除后不會持久化。
有人可以解釋以下配置的哪一部分允許docker容器保留索引嗎?
docker-compose.yml
version: '2'
services:
elasticsearch:
build:
context: build/elasticsearch/
volumes:
- ./build/elasticsearch/config.yml:/usr/share/elasticsearch/config/elasticsearch.yml:ro
ports:
- "9200:9200"
- "9300:9300"
environment:
ES_JAVA_OPTS: "-Xmx256m -Xms256m"
networks:
- elk
networks:
elk:
driver: bridge
構建/彈性搜索/Dockerfile
FROM docker.elastic.co/elasticsearch/elasticsearch-oss:6.0.0
構建/elasticsearch/config.yml
cluster.name: "docker-cluster"
network.host: 0.0.0.0
discovery.zen.minimum_master_nodes: 1
discovery.type: single-node
您可能知道,容器就是沙箱。 它有一個文件系統,其結構與典型的 linux 操作系統非常相似。 容器只能看到在這個文件系統中的那些文件和文件夾。
在容器內運行的進程將其數據和配置寫入此文件系統中的文件。 此進程不知道它是在容器中還是在 VM 上運行。 因此,數據保存在此文件系統中的文件和文件夾中。
現在,當您使用docker rm ...
刪除容器時docker rm ...
這些文件將隨容器一起刪除,因此您會丟失數據,除非您使用在主機上備份此數據的卷。
另一方面,停止和啟動容器不會刪除容器文件,因此當您重新啟動容器時數據仍然存在。
為了補充接受的答案,對於正在尋找如何保留數據的任何人。 添加問題中提到的volume
。
version: '3'
services:
elasticsearch: # Elasticsearch Instance
container_name: es-search
image: docker.elastic.co/elasticsearch/elasticsearch:6.1.1
volumes: # Persist ES data in seperate "esdata" volume
- esdata:/usr/share/elasticsearch/data
environment:
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.type=single-node
ports: # Expose Elasticsearch ports
- "9300:9300"
- "9200:9200"
volumes: # Define seperate volume for Elasticsearch data
esdata: ./my/esdata # path of your persisted data here
我在這里找到了彈性泊塢窗的指南: https : //blog.patricktriest.com/text-search-docker-elasticsearch/
可以使用以下命令觀察UUID 中的索引及其映射。
curl 'localhost:9200/_cat/indices?v'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.