docker部署es
docker部署es
·
1. 获取镜像
- docker pull elasticsearch:7.14.0
2.运⾏es
docker run -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.14.0
启动并设置内存大小:
docker run -d --name=es2 -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" elasticsearch:7.14.0
参数说明:
**-d : 后台运行,返回容器id
-p 9200:9200 : 将虚拟机9200端口映射到 ElasticSearch 的9200端口(web通信默认使用9200端口)
-p 9300:9300 : 将虚拟机9300端口映射到 ElasticSearch 的9300端口(分布式情况下,各个节点之间通信默 认使用9300端口)
--name elasticsearch : 为容器起一个名字为 es
elasticsearch:7.2.0 : ElasticSearch 镜像名称**
配置允许跨域:
#进入es容器内容
docker exec -it es /bin/bash
#修改es配置文件
vi /usr/share/elasticsearch/config/elasticsearch.yml
#添加以下配置
http.cors.enabled: true
http.cors.allow-origin: "*"
3.访问ES
http://host:9200/
安装ik分词器
#下载对应版本IK分词器,本次安装Elasticsearch为7.14.0,下载elasticsearch-analysis-ik-7.14.0.zip,到本机目录
#进入本机ik存储目录:~/soft/ik
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.2.0/elasticsearch-analysis-ik-7.14.0.zip
若下载不成功,则直接去官网下载,用xftp传到服务器
#解压到ik文件夹
unzip elasticsearch-analysis-ik/releases -d ./ik/
#将本机ik文件夹导入docker es容器中
docker cp ./ik es:/usr/share/elasticsearch/plugins/
#重启es
docker restart es
#校验es
curl localhost:9200
#检查ik分词器
#ik自 v5.0.0 起移除名为 ik 的analyzer和tokenizer,请分别使用 ik_smart 和 ik_max_word(默认)
curl -XGET "<http://localhost:9200/_analyze>" -H 'Content-Type: application/json' -d'{"text":"这是一个标题MN","tokenizer": "ik_max_word"}'
安装kibana
获取镜像
- docker pull kibana:7.14.0
运⾏kibana
- docker run -d --name kibana -p 5601:5601 kibana:7.14.0
kibana汉化
docker exec -it kibana /bin/bash
#最后一行添加 i18n.locale: "zh-CN"
vi /usr/share/kibana/conf/kibana.yml
#添加以下内容
i18n.locale: "zh-CN"
#重启kibana
docker restart kibana
kibana 连接到es需要修改kibana.yml里的es的ip
docker exec -it kibana /bin/bash
vi /usr/share/kibana/conf/kibana.yml
这一行
elasticsearch.hosts: [ "http://172.17.0.2:9200" ]
需要先查询es的内部Ip:
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id(容器名称或id)
更多推荐
已为社区贡献1条内容
所有评论(0)