Docker 安装ES
发表于:2024-04-25浏览:41次TAG: #es
# 一、Docker安装Elasticsearch
## 1.1、拉取Elasticsearch镜像
```
docker pull elasticsearch:7.7.0
```
## 1.2、启动前准备
创建存放数据及配置文件的文件夹,启动时挂载。
```
mkdir -p /home/elasticsearch/data/
mkdir -p /home/elasticsearch/config/
mkdir -p /home/elasticsearch/logs/
```
### 编写配置文件elasticsearch.yml
```
echo 'http.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.enrollment.enabled: true '>>/home/elasticsearch/config/elasticsearch.yml
```
### 修改文件权限
```
chmod -R 777 /home/elasticsearch/
```
## 1.3、启动elasticseach镜像
```
docker run --name elasticsearch -p 9200:9200 \
-p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx128m" \
-v /home/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /home/elasticsearch/data:/usr/share/elasticsearch/data \
-v /home/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.7.0
```
在浏览器上输入:[http://IP:9200](http://ip:9200/)
## 1.4、修改ES密码(修改elasticsearch.yml 增加一下代码)
```
xpack.security.enabled: true
```
> 重启服务,进入容器
```
docker exec -it elasticsearch /bin/bash
```
> 然后运行以下命令
```
./elasticsearch-setup-passwords interactive
```
# 二、安装ik分词器
## 2.1、什么是IK分词器?
IK提供了两个分词算法:ik_smart和ik_max_word
其中ik_smart为最少切分,ik_max_word为最细粒度划分
## 2.2、安装ik分词器
进入已经启动成功的elasticsearch容器。
```
docker exec -it elasticsearch /bin/bash
```
```
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.7.0/elasticsearch-analysis-ik-7.7.0.zip
```
> 下载过程中会出现这个问题,直接输入 y回车就可以了。
> 下载完成之后,退出去,重新启动elasticsearch容器。
```
docker restart elasticsearch
```
## 2.3、测试IK分词器
### post请求分词测试:
> http://服务器IP地址:9200/_analyze
```
{
"tokenizer":"ik_smart",
"text":"我爱技术"
}
```
结果:
```
{
"tokens": [
{
"token": "我",
"start_offset": 0,
"end_offset": 1,
"type": "CN_CHAR",
"position": 0
},
{
"token": "爱",
"start_offset": 1,
"end_offset": 2,
"type": "CN_CHAR",
"position": 1
},
{
"token": "技术",
"start_offset": 2,
"end_offset": 4,
"type": "CN_WORD",
"position": 2
}
]
}
```
# 三、安装Elasticsearch可视化工具 elasticsearch-head:5
Elasticsearch可视化工具有多种,可以根据自己的喜好进行选择,我这里使用的是mobz/elasticsearch-head:5而已。
## 3.1、拉取镜像
```
docker pull mobz/elasticsearch-head:5
```
## 3.2、启动镜像
```
docker run -d --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5
```
## 3.3、测试可视化工具
浏览器访问:http://服务器IP:9100/