当前位置: 首页 > news >正文

挂载 IK 分词器至 Elasticsearch Docker 容器 - Docker Docker Compose 教程

简介

本博客将讲解如何在 Docker 和 Docker-Compose 中运行 Elasticsearch,并挂载 IK 分词器。

步骤

一、快速运行Elasticsearch:8.1.3

1.首先,我们需要创建一个新的 Docker 网络:"elastic"。这个网络会提供给我们接下来所要创建的 Docker 容器之间共享。运行命令:

docker network create elastic

2.然后,从 docker.elastic.co 拉取名为 elasticsearch 的 Docker 镜像,版本为 8.1.3。运行命令:

docker pull docker.elastic.co/elasticsearch/elasticsearch:8.1.3

3.运行刚刚拉取的 Elasticsearch Docker 镜像,并创建一个 Docker 容器:

docker run --name es01 --net elastic -p 9200:9200 -p 9300:9300 -it docker.elastic.co/elasticsearch/elasticsearch:8.1.3
 

二、Docker 给运行的Elasticsearch Docker容器挂载 IK 分词器

1.获取正在运行的 Elasticsearch Docker 容器内 config、data、plugins 的路径,运行命令:

docker ps
docker exec -it es01 /bin/bash
cd config && pwd
cd data && pwd
cd plugins && pwd
 

2.止并删除 es01 容器:

exit
docker stop es01
docker rm es01
 

3.创建目录结构并复制相关文件:

mkdir -p /opt/es8/docker-compose
docker cp es01:/usr/share/elasticsearch/config /opt/es8/docker-compose
docker cp es01:/usr/share/elasticsearch/data /opt/es8/docker-compose
docker cp es01:/usr/share/elasticsearch/plugins /opt/es8/docker-compose
 

4.在 "/opt/es8/docker-compose/plugins" 创建一个名为 "ik" 的文件夹:

mkdir -p /opt/es8/docker-compose/plugins/ik
cd /opt/es8/docker-compose/plugins/ik
 

5.下载并解压 8.1.3 分词器,并删除安装包:

wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.1.3/elasticsearch-analysis-ik-8.1.3.zip
unzip elasticsearch-analysis-ik-8.1.3.zip
rm -Rf elasticsearch-analysis-ik-8.1.3.zip
 

6.重新启动 Elasticsearch docker 容器:

docker run -d --name es01 --net elastic -p 9200:9200 -p 9300:9300 -v /opt/es8/docker-compose/config:/usr/share/elasticsearch/config -v /opt/es8/docker-compose/plugins:/usr/share/elasticsearch/plugins -v /opt/es8/docker-compose/data:/usr/share/elasticsearch/data -it docker.elastic.co/elasticsearch/elasticsearch:8.1.3
 

7.进入 Elasticsearch 容器,验证 IK 分词器是否安装成功:

docker ps
docker exec -it es01 /bin/bash
cd /bin
./elasticsearch-plugin list
 

三、Docker-Compose 给运行的Elasticsearch Docker容器挂载 IK 分词器

1.在"/opt/es8/docker-compose" 创建 "docker-compose.yml" 文件:

cd /opt/es8/docker-compose
touch docker-compose.yml
 

2.注意在 "docker-compose.yml" 文件中添加以下参数:

version: '0.1'
services:es01:image: docker.elastic.co/elasticsearch/elasticsearch:8.1.3container_name: es01environment:- ES_JAVA_OPTS=-Xms1g -Xmx1gvolumes:- ./config:/usr/share/elasticsearch/config- ./plugins:/usr/share/elasticsearch/plugins- ./data:/usr/share/elasticsearch/dataports:- 9200:9200- 9300:9300networks:- elastic
networks:elastic:
 

3.运行 "docker-compose.yml" 文件:

docker compose up
 

4.看当前正在运行的 Elasticsearch Docker 容器。

docker ps
 

至此,我们已经在 Docker 和 Docker-Compose 中成功运行了 Elasticsearch 并挂载了 IK 分词器。

 

结语

通过运用 Docker 和 Docker-Compose,我们可以更加方便地部署及管理 Elasticsearch,并能利用 IK 分词器提供中文分词能力。希望这篇博文可以让你更好地理解这些工具与技术如何协同工作。

http://www.lryc.cn/news/117589.html

相关文章:

  • 7.6 通俗易懂解读残差网络ResNet 手撕ResNet
  • robotframework+selenium 进行webui页面自动化测试
  • 手机突然无法获取ip地址
  • C++——关于命名空间
  • 怎么进行流程图制作?用这个工具制作很方便
  • 【ChatGPT 指令大全】怎么使用ChatGPT来辅助学习英语
  • Ubuntu20配置仅主机网络
  • 调整奇数偶数顺序
  • 日志的规范
  • Spring AOP(AOP概念,组成成分,实现,原理)
  • Android WebView简单应用:构建内嵌网页浏览功能
  • 并发——乐观锁常见的两种实现方式,乐观锁的缺点
  • Spring 事务管理
  • unity修改单个3D物体的重力的大小该怎么处理呢?
  • [Qt]FrameLessWindow实现调整大小、移动弹窗并具有Aero效果
  • 【API生命周期看护】API日落
  • PHP 使用ThinkPHP实现电子邮件发送示例
  • Leetcode-每日一题【剑指 Offer 18. 删除链表的节点】
  • [LINUX使用] top 命令的使用
  • 通过redis进行缓存分页,通过SCAN扫描进行缓存更新
  • C#小轮子 Debug,Release,发布模式如何运行不同的代码
  • 【【萌新的STM32 学习-6】】
  • “深入解析JVM:探索Java虚拟机的工作原理“
  • 【目标检测系列】YOLOV2解读
  • 【深入浅出程序设计竞赛(基础篇)第一章 算法小白从0开始】
  • openGauss学习笔记-36 openGauss 高级数据管理-TRUNCATE TABLE语句
  • ChatGPT生成文本检测器算法挑战大赛
  • O2OA开发平台实施入门指南
  • 服装行业多模态算法个性化产品定制方案 | 京东云技术团队
  • MySQL表空间结构与页、区、段的定义