一、使用docker 簡單部署 ElasticSearch
(1)首先要拉取鏡像
[root@localhost ~]# docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2
如果下載超時,嘗試下6.5.0版本
docker pull elasticsearch:6.5.0
查看鏡像執行docker images
(2)運行容器
ElasticSearch
的默認端口是9200,我們把宿主環境9200端口映射到Docker
容器中的9200端口,就可以訪問到Docker
容器中的ElasticSearch
服務了,同時我們把這個容器命名為es
。
[root@localhost ~]# docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.3.2
(3)配置跨域,不然外界瀏覽器訪問不了。
進入容器
由於要進行配置,因此需要進入容器當中修改相應的配置信息。
[root@localhost ~]# docker exec -it es /bin/bash
然后進入配置文件
[root@b38744e49e25 elasticsearch]# cd config
執行ls 或者 ll查看文件,我們可以看到 elasticsearch.yml 配置文件
然后修改elasticsearch.yml 文件
[root@b38744e49e25 config]# vi elasticsearch.yml
# 加入跨域配置 http.cors.enabled: true http.cors.allow-origin: "*"
最后重啟容器
由於修改了配置,因此需要重啟ElasticSearch
容器。
首先退出容器或者重新開發窗口再重啟ES
[root@localhost ~]# docker restart es
瀏覽器訪問如下:
ip+端口(9200)
二、Docker 部署 ElasticSearch-Head
(1)拉取鏡像
[root@localhost ~]# docker pull mobz/elasticsearch-head:5
(2)運行容器
[root@localhost ~]# docker run -d --name es_admin -p 9100:9100 mobz/elasticsearch-head:5
ElasticSearch
的默認端口是9200,我們把宿主環境9200端口映射到Docker
容器中的9200端口,就可以訪問到Docker
容器中的ElasticSearch
服務了,同時我們把這個容器命名為es
。
瀏覽器訪問如下:
ip+端口(9100)
添加索引庫ES
[root@service ~]# curl -XPUT http://192.168.231.130:9200/es/
添加數據
[root@service ~]# curl -H "Content-Type: application/json" -XPOST http://localhost:9200/es/employee -d '{"first_name" : "bin","last_name" : "tang","age" : 33,"about" : "I love to go rock climbing","interests": [ "sports", "music"]}'
瀏覽器查詢數據是否成功
這樣,我們就完成了用Docker提供Elasticsearch服務,如果想同時啟動多個不同版本的Elastcsearch或者其他服務,Docker也是一個理想的解決方案。
三、ik的部署
進入容器(es為容器的名稱,也可以跟你id進入)
[root@service ~]# docker exec -it es /bin/bash
注意:es跟ik的版本要一致
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.0/elasticsearch-analysis-ik-6.5.0.zip
接着進入到 plugins 目錄可以看到IK分詞器已經安裝成功
cd plugins/
接着退出容器並重啟容器
exit docker restart 容器名
ok 部署ik完成。
四、kibana的部署
使用docker拉取kibana鏡像
[root@service ~]# docker pull kibana:6.5.0
查看鏡像
[root@service ~]# docker images
運行鏡像
[root@service ~]# sudo docker run --name mykibana -e ELASTICSEARCH_URL=http://192.168.231.130:9200 -p 5601:5601 -d kibana
查看運行中的鏡像
[root@service ~]# docker ps
隨后打開 http://服務ip:5061/ ,可以看到kibana界面。