Docker安裝Elasticsearch和Kibana(單機開發版)

一.環境

準備一臺有docker環境的虛擬機,需要注意的是分配內存記得一定大於2G,因爲ES需要的內存就至少要1G了

二.拉取鏡像

進入docker hub查詢自己需要的es版本

docker hub elasticsearch tag

這裏以安裝7.6.0爲例  右邊有拉取鏡像的指令,直接複製,在linux下執行即可拉取鏡像

這裏鏡像已拉取完畢

三.容器運行ES

這裏強烈建議按照docker hub的文檔來啓動,不然會遇到很多坑

先創建用戶定義的網絡(用於連接到連接到同一網絡的其他服務(例如,Kibana))

這一步非常重要,不然kibana後面會一直連接不上es

docker run -it --net esnetwork --name elasticsearch -d -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.6.0

 

9300:ES節點之間的通訊使用

9200:ES節點和外部通訊使用

 

docker ps -a如果發現容器啓動失敗

docker logs elasticsearch查看日誌 發現報錯

問題1 elasticsearch用戶擁有的內存權限太小,至少需要262144

vim /etc/sysctl.conf  加入

vm.max_map_count=655360 然後執行sysctl -p讓系統重新加載vm.max_map_count參數

刪除之前的容器再次重啓

問題2 the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured

需要再容器啓動命令上加入-e "discovery.type=single-node"

測試 瀏覽器訪問http://192.168.56.101:9200/

四.安裝Kibana

注意最好和ES版本一致 這裏同樣是7.6.0版本

下載容器後

運行kibana容器

docker run --net esnetwork --name kibana -e ELASTICSEARCH_URL=http://127.0.0.1:9200 -p 5601:5601 -d kibana:7.6.0

這裏要和上面的es處於一個自定義網絡 不然會出現下面的情況


訪問出錯 查看日誌

docker logs kibana

發現

docker exec -it kibana /bin/bash 進入交互模式

vi config/kibana.yml

發現host爲http://elasticsearch:9200 更改爲實際IP地址

然後重啓kibana容器

訪問http://192.168.56.101:5601 發現啓動正常

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章