Docker下安裝ElasticSearch和Kibana

1.前言

如今elasticsearch是比較火的,不少公司都在用,因此若是說還不知道es可能就會被人鄙視了。因此這裏我就下決心來學習es,我比較鍾愛於docker全部也就使用了docker來安裝es,這裏會詳細介紹下安裝的細節以及須要注意的地方。關於docker的安裝在這裏我就不去說明了,能夠自行安裝一下就能夠了,很簡單的,我保證你真的可能會愛上它。這裏我使用的電腦是MacBook Pro 若是是linux的話其實基本相同,若是是Windows的話,可能就不太同樣了,這裏我也沒有實際操做過,感興趣的也能夠本身去嘗試一下。node

2.ElasticSearch安裝

2.1 docker安裝es

要使用es確定是須要安裝的,因爲用慣了docker,因此也想在docker上嘗試一下,主要是由於個人好多軟件都以及選擇了docker。docker安裝實際上是很簡單的,至於要一行命令便可。這裏我選擇的是es的7.2.0版本鏡像鏡像安裝,具體安裝命令以下:linux

docker pull elasticsearch:7.2.0

敲完命令之後回車,只須要等帶鏡像下載完成就能夠了。git

2.2 啓動es

安裝完成之後固然須要去啓動咱們的es了,這裏啓動也是很方便的只須要一行命令便可。以下:github

docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -d elasticsearch:7.2.0

這樣es就啓動好了。咱們能夠去檢查es是否安裝完成,能夠輸入命令:docker

curl http://localhost:9200

或者在瀏覽器中打開http://localhost:9200這個網址,若是能看到如下信息則說明咱們的es是已經安裝好了的。跨域

{
  "name" : "530dd7820315",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "7O0fjpBJTkmn_axwmZX0RQ",
  "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"
}

若是你是在服務器上安裝,想要對外訪問還必須打開你服務器的9200端口,而後將localhost換成你服務器的ip地址便可。瀏覽器

2.3 修改配置,解決跨域訪問問題

首先進入到容器中,而後進入到指定目錄修改elasticsearch.yml文件。bash

docker exec -it elasticsearch /bin/bash
cd /usr/share/elasticsearch/config/
vi elasticsearch.yml

在elasticsearch.yml的文件末尾加上:服務器

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

修改配置後重啓容器便可。cors

docker restart elasticsearch

2.4 安裝ik分詞器

es自帶的分詞器對中文分詞不是很友好,因此咱們下載開源的IK分詞器來解決這個問題。首先進入到plugins目錄中下載分詞器,下載完成後而後解壓,再重啓es便可。具體步驟以下:
注意:elasticsearch的版本和ik分詞器的版本須要保持一致,否則在重啓的時候會失敗。能夠在這查看全部版本,選擇合適本身版本的右鍵複製連接地址便可。點擊這裏

cd /usr/share/elasticsearch/plugins/
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.2.0/elasticsearch-analysis-ik-7.2.0.zip
exit
docker restart elasticsearch

而後能夠在kibana界面的dev tools中驗證是否安裝成功;

POST test/_analyze
{
  "analyzer": "ik_max_word",
  "text": "你好我是東邪Jiafly"
}

不添加"analyzer": "ik_max_word",則是每一個字分詞,能夠在下面kibana安裝完成之後嘗試一下。

3.kibana安裝

3.1 docker安裝kibana

一樣適用docker安裝kibana命令以下:

docker pull kibana:7.2.0

等待全部鏡像下載完成便可。

3.2 啓動kibana

安裝完成之後須要啓動kibana容器,使用--link鏈接到elasticsearch容器,命令以下:

docker run --name kibana --link=elasticsearch:test  -p 5601:5601 -d kibana:7.2.0
docker start kibana

啓動之後能夠打開瀏覽器輸入http://localhost:5601就能夠打開kibana的界面了。

4.結語

通過以上步驟就安裝好了es和kibana,是否是很簡單?這就是docker的好用處之一,也是我比較鍾愛docker的緣由之一。固然docker遠不止這些功能,更多的咱們之後慢慢寫到,總之確定是都能用上的。哈哈

相關文章
相關標籤/搜索