docker容器安装elasticsearch plugin

Docker容器中Elasticsearch插件安装
本文介绍在Docker容器环境下安装Elasticsearch插件的在线与离线方法,解决安装过程中遇到的EOF异常问题,并提供详细的命令行操作步骤。

docker容器在线安装plugin

进入容器,然后安装。

docker exec -it 018a1586b7ef /bin/bash

elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.4.0/elasticsearch-analysis-ik-6.4.0.zip

竟然报错了

java.io.EOFException: Unexpected end of ZLIB input stream

花了大半天的时间下载都成功了,却安装失败,这不浪费时间吗。

docker容器离线安装plugin

离线准备好zip包,将zip拷贝进容器,然后进入容器,然后安装。

cp /Users/zhuhuiyuan/Downloads/elasticsearch-analysis-ik-6.4.0.zip /mydata/elasticsearch/

cd /mydata/elasticsearch/

docker cp elasticsearch-analysis-ik-6.4.0.zip 018a1586b7ef:/usr/share/elasticsearch

docker exec -it 018a1586b7ef /bin/bash

重点命令:

elasticsearch-plugin install file:\/usr/share/elasticsearch/elasticsearch-analysis-ik-6.4.0.zip

安装成功

 

### 安装与配置Elasticsearch #### 使用 Docker 安装 Elasticsearch 为了在Docker容器安装Elasticsearch,可以采用`docker pull`命令拉取官方镜像: ```bash docker pull elasticsearch:7.10.2 ``` 创建并启动Elasticsearch容器时,可以通过指定环境变量和卷挂载来优化性能以及持久化数据[^2]。 #### 配置文件管理 对于更复杂的设置需求,比如调整JVM堆大小或是启用特定功能,则需先将默认的配置目录复制至宿主机以便修改。操作如下所示: ```bash docker cp elasticsearch:/usr/share/elasticsearch/config /mydata/es ``` 编辑完成后重新加载回容器内相应路径下覆盖原有配置项即可生效。 #### 启动服务 当所有准备工作就绪之后,执行下面这条指令让Elasticsearch实例运行起来: ```bash docker run -d --name=elasticsearch \ -p 9200:9200 -p 9300:9300 \ -e "discovery.type=single-node" \ -v /mydata/es/data:/var/lib/elasticsearch \ -v /mydata/es/plugins:/usr/share/elasticsearch/plugins \ -v /mydata/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \ elasticsearch:7.10.2 ``` 这里特别注意端口映射部分(-p),确保外部能够访问到内部的服务;还有就是通过-v参数指定了多个卷用于保存重要资料防止丢失的同时也方便后续维护升级等工作。 #### 插件安装 如果想要给Elasticsearch添加额外的功能模块(例如中文分词器IK),可以在停止状态下进入目标容器内部完成插件部署工作后再正常开启服务进程[^1]。 ```bash docker exec -it elasticsearch bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.10.2/elasticsearch-analysis-ik-7.10.2.zip ``` 上述命令会自动下载对应版本号的软件包并按照指引逐步完成整个集成过程。最后记得再次重启一次以使更改立即可见。 #### 跨域资源共享(CORS) 针对某些场景下可能遇到的安全策略限制问题——即浏览器同源政策所引发的数据交互障碍现象,在此提供一种解决方案:允许任意来源发起请求访问API接口资源。具体做法是在`elasticsearch.yml`文档里追加两行声明语句实现全局开放权限设定[^4]: ```yaml http.cors.enabled: true http.cors.allow-origin: "*" ``` 以上便是关于如何利用Docker技术快速搭建起一套完整的Elasticsearch开发测试平台的方法介绍。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alphathur

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值