一、安装docker
二、配置es挂载文件和目录
mkdir -p /opt/elasticsearch/{config,data,plugins}
chmod 777 /opt/elasticsearch/data
在config目录下创建elasticsearch.yml配置文件
- cluster.name: elasticsearch-cluster
- # 节点名称
- node.name: elasticsearch-node1
- # # 绑定host,0.0.0.0代表当前节点的ip
- network.host: 0.0.0.0
- # # 设置其它节点和该节点交互的ip地址,如果不设置它会自动判断,值必须是个真实的ip地址(本机ip),因为我使用的是docker启动,不是简单127.0.0.1,要查看具体分配的ip
- network.publish_host: 192.168.168.157
- # # 设置对外服务的http端口,默认为9200
- http.port: 9200
- # # 设置节点间交互的tcp端口,默认是9300
- transport.tcp.port: 9300
- # # 是否支持跨域,默认为false
- http.cors.enabled: true
- # # 当设置允许跨域,默认为*,表示支持所有域名,如果我们只是允许某些网站能访问,那么可以使用正则表达式。比如只允许本地地址。 /https?:\/\/localhost(:[0-9]+)?/
- http.cors.allow-origin: "*"
- # # 表示这个节点是否可以充当主节点
- node.master: true
- # # 是否充当数据节点
- node.data: true
- # # 所有主从节点ip:port
- discovery.seed_hosts: ["192.168.168.157:9300"]
- # # 这个参数决定了在选主过程中需要 有多少个节点通信 预防脑裂
- discovery.zen.minimum_master_nodes: 1
三、启动elasticsearch
- docker run --restart=always --name elasticsearch \
- -p 9200:9200 -p 9300:9300 \
- -e "discovery.type=single-node" \
- -e ES_JAVA_OPTS="-Xms256m -Xmx256m" \
- -v /opt/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
- -v /opt/elasticsearch/data:/usr/share/elasticsearch/data \
- -v /opt/elasticsearch/plugins:/usr/share/elasticsearch/plugins -d elasticsearch:7.11.1
启动成功后可以访问http://ip:9200,看到如下信息说明启动成功。

四、安装ik分词器
- docker exec -it elasticsearch /bin/bash
- cd /usr/share/elasticsearch/bin/
- ./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.11.1/elasticsearch-analysis-ik-7.11.1.zip
- exit
- docker restart elasticsearch
五、安装elasticsearch-head
docker run --restart=always --name elasticsearch-head -p 9100:9100 -d mobz/elasticsearch-head:5
启动完成后可以访问http://ip:9100,填写对应的elasticsearch的地址,点击连接。

六、安装kibana
创建对外挂载的目录和配置文件
- mkdir -p /opt/kibana/conf
- chmod 777 /opt/kibana/conf
- cd /opt/kibana/conf
创建kibana.yml,内容如下
- server.name: kibana
- # kibana的主机地址 0.0.0.0可表示监听所有IP
- server.host: "0.0.0.0"
- # kibana访问es的URL
- elasticsearch.hosts: [ "http://192.168.168.157:9200" ]
- # # 语言
- i18n.locale: "zh-CN"
启动kibana
- docker run --restart=always \
- --name elasticsearch_kibana \
- --privileged=true \
- -p 5601:5601 \
- -v /opt/kibana/conf/kibana.yml:/usr/share/kibana/config/kibana.yml \
- -d docker.io/kibana:7.11.1
启动成功后访问http://ip:5601,可以看到你的es的信息

至此,es相关的软件都安装好了,可以去做一些其他的操作了。