1:安装elasticsearch

1.1:拉取镜像

执行下面的命令将es的镜像拉取到本地

docker pull docker.elastic.co/elasticsearch/elasticsearch:6.5.0

1.2:启动容器

没有将配置、es数据映射出来的方式启动es,这种方式有一些坏处就是如果要修改配置要进入到容器内部,es的数据也会存放在es容器内部,如果容器被删除之类的,数据、配置就会丢失

docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.5.0

1.3:查看启动中的容器

docker ps 

1.4:查看es是否正常启动

输入网址:http://localhost:9200 如果是正常启动会展示类型下面这个结构的数据

{
  "name" : "748160259c24",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "nQk_C-H0R6Sf1w4qcxDHAw",
  "version" : {
    "number" : "7.2.0",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "508c38a",
    "build_date" : "2019-06-20T15:54:18.811730Z",
    "build_snapshot" : false,
    "lucene_version" : "8.0.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}
2:安装中文分词器(注意如果要用到中文分词器,需要在索引创建前安装好,不然索引创建完成后会出现异常)

2.1:进入容器内部

2.2:下载中文分词器,分词器的版本最好跟你的es版本一致

wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.0/elasticsearch-analysis-ik-6.5.0.zip

2.3:进入plugins目录,创建存放分词器的目录:ik

2.4:将下载的压缩包移动到ik目录下
2.5:解压压缩包

unzip elasticsearch-analysis-ik-6.5.0.zip

2.6:退出容器.重启es

3:安装kibana

3.1:拉取镜像

docker pull docker.elastic.co/kibana/kibana:6.5.0

3.2:启动kibana

docker run -it -d -e ELASTICSEARCH_URL=http://es容器内部ip地址:9200 --name kibana -p 5601:5601 docker.elastic.co/kibana/kibana:6.5.0

注意:es 的 URL要写容器内部的ip,查看容器内部的ip命令:

docker inspect --format '{{ .NetworkSettings.IPAddress }}' <container-ID> 

docker inspect <container id>
4:安装head插件

v5.x以后不支持plugin需要独立部署

拉取镜像

docker pull mobz/elasticsearch-head:5

启动容器

docker run --name es-manager -d -p 9100:9100 docker.io/mobz/elasticsearch-head:5

修改head显示es集群未连接状态问题

进入es容器,在elasticsearch.yml中添加下面的这两行配置

http.cors.enabled: true
http.cors.allow-origin: "*"
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐