Docker 安装 Elasticdump
声明:本篇文章属古乃特个人所有,不涉及商业目的,仅用于学习记录。点击获取练习资源
获取镜像(elasticdump/elasticsearch-dump)
# 拉取镜像
docker pull elasticdump/elasticsearch-dump
# 查看本地镜像
docker images
启动容器
使用说明:
经过使用发现docker启动elasticdump容器时即会执行一次数据导入导出操作过后停止容器实例;
以下是启动容器时未指定导入导出命令产生的错误:docker run -d \ --name elastic-dump \ -v /gonait/docker-mount/elastic-dump/data:/data \ elasticdump/elasticsearch-dump [root@easy-cloud-node-202 data]# docker logs elastic-dump Tue, 31 Oct 2023 11:21:31 GMT | Error Emitted => {"errors":["`input` is a required input","`output` is a required input"]}
启动参数:
-d 后台启动运行 --rm 容器退出时自动remove,相当于手动执行了docker rm container_name --name 容器名称 -v 指定挂载目录,需准备好挂载路径:`/gonait/docker-mount/elastic-dump`,并需要指定文件夹读写权限`chmod -R 777 elastic-dump` elasticdump/elasticsearch-dump 指定启动镜像 --input=http://elasticsearch:9200/index_name 指定导出的索引 --output=/data/file_name.json 指定导出文件,这里是指容器中的路径,需与宿主机挂载 --limit=10000 批量写入文件的文档数量 --type 指定导出类型:default: data, options: [index, settings, analyzer, data, mapping, policy, alias, template, component_template, index_template
导出指定索引的结构及其数据(json文件)
- 导出索引的结构
docker run -d --rm \ --name elastic-dump \ -v /gonait/docker-mount/elastic-dump/data:/data \ elasticdump/elasticsearch-dump \ --input=http://192.168.56.202:9200/tang_song_poems \ --output=/data/tang_song_poems_index.json \ --type=index \ --limit=10000
- 导出索引的数据
docker run -d --rm \ --name elastic-dump \ -v /gonait/docker-mount/elastic-dump/data:/data \ elasticdump/elasticsearch-dump \ --input=http://192.168.56.202:9200/tang_song_poems \ --output=/data/tang_song_poems.json \ --type=data \ --limit=10000
从文件导入索引结构及数据至指定es
- 导入索引的结构
docker run -d --rm \ --name elastic-dump \ -v /gonait/docker-mount/elastic-dump/data:/data \ elasticdump/elasticsearch-dump \ --input=/data/tang_song_poems_index.json \ --output=http://192.168.56.206:9200/tang_song_poems \ --type=index \ --limit=10000
- 导入索引的数据
docker run -d --rm \ --name elastic-dump \ -v /gonait/docker-mount/elastic-dump/data:/data \ elasticdump/elasticsearch-dump \ --input=/data/tang_song_poems.json \ --output=http://192.168.56.206:9200/tang_song_poems \ --type=data \ --limit=10000
从es导入索引结构及数据至指定es
- 导入索引的结构
docker run -d --rm \ --name elastic-dump \ -v /gonait/docker-mount/elastic-dump/data:/data \ elasticdump/elasticsearch-dump \ --input=http://192.168.56.202:9200/tang_song_poems \ --output=http://192.168.56.206:9200/tang_song_poems \ --type=index \ --limit=10000
- 导入索引的数据
docker run -d --rm \ --name elastic-dump \ -v /gonait/docker-mount/elastic-dump/data:/data \ elasticdump/elasticsearch-dump \ --input=http://192.168.56.202:9200/tang_song_poems \ --output=http://192.168.56.206:9200/tang_song_poems \ --type=data \ --limit=10000