docker安装es7.10.1
以下为自己遇到该问题后的解决方式,记录一下。
- 首先确认是否是单节点启动。如果是单节点,请按照该命令启动
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e discovery.type=single-node -d elasticsearch:7.10.1
--name 自定义的启动名称
-p 表示容器内部端口和服务器端口映射关联
-e 指定容器内的环境变量。此处设置elasticsearch的discovery.type=single-node
-d 后台启动
elasticsearch:7.10.1 表示从docker镜像elasticsearch:7.10.1中启动一个容器
- 修改jvm空间分配
(1)find /var/lib/docker/overlay2/ -name jvm.options
(2)查找到jvm.options文件,找到后进入使用vi命令打开jvm.options,将-Xms和-Xmx都改成512m
(3)保存退出 - 重启es容器测试,如果还是会自动退出,请进行4步
- 修改/etc/sysctl.conf
(1)vi /etc/sysctl.conf
(2)添加配置
vm.max_map_count=262144
(3)sysctl -p 查看是否配置成功
(4)到了这步大多情况可以启动成功
(5)如果启动es还是失败,修改limits.conf
vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
(6)重启机器,重启es,浏览器访问es的ip+port 此时应该就可以
docker安装kibana
(1)docker拉取kibana7.10.1镜像
docker pull kibana:7.10.1
(2)运行kibana
docker run -d --name kibana --link <你的es的容器id或name>:elasticsearch -p 5601:5601 kibana:7.10.1
(3)启动成功,浏览器访问http://ip:5601是否成功
docker中的es安装ik分词器
ik分词器的github地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
(1)进入es容器
docker exec -it <es容器id> /bin/bash
(2)进入bin目录下
cd bin/
(3)安装对应版本的ik分词器,此处为7.10.1
./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.10.1/elasticsearch-analysis-ik-7.10.1.zip
(4) 可以找到IKAnalyzer.cfg.xml在里面指定自定义分词文件的地址。
docker中的es安装pinyin分词器
pinyin分词器的github地址:https://github.com/medcl/elasticsearch-analysis-pinyin/releases
安装过程同上