Linux 中使用 Docker 安装 Elasticsearch 及 Kibana
安装 Elasticsearch 和 Kibana
查看当前运行的镜像及本地已经下载的镜像,确认之前没有安装过 ES 和 Kibana 镜像
docker ps
docker images
从远程镜像仓库拉取 ES 镜像到本地
docker pull elasticsearch:7.4.2
从远程镜像仓库拉取 Kibana 镜像到本地
docker pull kibana:7.4.2
查看本地仓库中的镜像
docker images
查看内存空间使用情况
free -m
创建后续挂载的文件夹
mkdir -p /mydata/elasticsearch/config
mkdir -p /mydata/elasticsearch/data
添加 elasticsearch.yml
配置
cd /mydata/elasticsearch/config
echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml
cat elasticsearch.yml
修改 /mydata/elasticsearch/ 目录权限(一定要加上,否则之后ES镜像可能无法启动)
chmod -R 777 /mydata/elasticsearch/
挂载镜像文件
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx1024m" \
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \
-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.4.2
启动 ES 和 Kibana 镜像
docker start 89a
docker start f60
在浏览器中访问 kibana 地址
192.168.56.10:9200
192.168.56.10:5601
最后,设置虚拟机重启后 ES 和 Kibana 自动重启
docker update elasticsearch --restart=always
docker update kibana --restart=always
安装分词插件 ik_smart
首先准备好工具,安装 wget
yum install wget
进入 plugins 文件夹
cd /mydata/elasticsearch/plugins
新建一个文件夹 ik
注意:一定要新建一个文件夹,名字可以自定义,但是分词插件的解压包必须放在文件夹目录中,不可以直接暴露在 plugins 目录中,否则后面会报错:
Caused by: java.nio.file.FileSystemException: /usr/share/elasticsearch/plugins/plugin-descriptor.properties/plugin-descriptor.properties: Not a directory
mkdir ik
安装 elasticsearch-analysis-ik
分词插件
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.4.2/elasticsearch-anal
ysis-ik-7.4.2.zip
下载安装之后,为了能够解压,需要安装 unzip 命令
yum install unzip
然后使用 unzip 命令解压下载的分词压缩包
unzip elasticsearch-analysis-ik-7.4.2.zip
解压完成之后,为了节省空间,可以删除之前下载的压缩包
rm elasticsearch-analysis-ik-7.4.2.zip
安装完成之后,重启 elasticsearch 镜像
docker restart 89a
并在 Kibana 中使用 ik_smart
分词器对中文进行分词测试
可以看到,对中文正确分词成功。