前提條件:確保你的機器上面已經安裝了Docker和Java。
一、安裝ElasticSearch
1、下載鏡像
docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2
用docker images查看已下載的鏡像
(可選)對鏡像命名:docker tag IMAGEID(鏡像id) REPOSITORY:TAG(倉庫:標籤),以新的名字複製一份。
2、運行容器
docker run -d --name es -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.3.2
因爲我的是雲服務器內存比較小,所以指定了JVM的堆內存大小。
3、修改配置
要想允許跨域訪問,需要修改一些參數。
1)使用命令docker exec -it es /bin/bash(es是運行容器時指定的name,也可以用CONTAINER ID)進入容器內部。
2)在文件config/elasticsearch.yml後面添加以下內容
http.cors.enabled: true
http.cors.allow-origin: "*"
3)使用docker restart es命令重啓ES。
瀏覽器打開http://ip:9200,可以看到如下內容。
二、安裝elasticsearch-head插件
1、下載鏡像
docker pull mobz/elasticsearch-head:5
2、運行容器
docker run -d --name es_admin -p 9100:9100 mobz/elasticsearch-head:5
3、設置外部訪問
由於容器裏面沒有安裝vi/vim,所以需要將配置文件拷貝出來修改之後再放回去。
1)使用docker cp es_admin:/usr/src/app/Gruntfile.js ./命令將es容器裏的文件拷貝到當前目錄。
2)修改文件,增加內容hostname: '0.0.0.0',如圖
3)使用docker cp Gruntfile.js es_admin:/usr/src/app/命令將文件拷貝回去。
4、連接ES
瀏覽器訪問http://ip:9100,然後連接指定的ES服務。
三、安裝中文分詞器插件
1、下載插件壓縮包
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.3.2/elasticsearch-analysis-ik-6.3.2.zip
2、將壓縮包拷貝到es容器內部
1)進入es容器內部,並創建插件目錄。
2)使用exit命令退回宿主機,將壓縮包拷貝到es容器剛纔創建的目錄下
docker cp /home/zhh/software/elasticsearch-analysis-ik-6.3.2.zip es:/usr/share/elasticsearch/plugins/ik
3)再次進入es容器內部,使用unzip命令將壓縮包解壓。
到此,中文分詞器插件安裝完成。