使用 Docker 快速部署 Elasticsearch 全家桶
使用 Docker 快速部署 Elasticsearch, Kibana, Head
前言
Docker 傻瓜式安装教程之前写过了,详见这里
安装 Elasticsearch 6.4.3
配置增加线程数
sysctl -w vm.max_map_count=262144
启动 Elasticsearch
docker run -d \
--name elasticsearch \
--restart=always \
--privileged=true \
--ulimit nofile=65530:131072 \
--ulimit memlock=-1 \
--memory=6G \
--memory-swap=-1 \
--cpuset-cpus='0-3' \
--net host \
--volume /data/elasticsearch/data:/usr/share/elasticsearch/data \
--volume /data/elasticsearch/logs:/usr/share/elasticsearch/logs \
-p 9200:9200 -p 9300:9300 -p 5601:5601 \
-e cluster.name="oa-search" \
-e "discovery.type=single-node" \
-e "http.cors.enabled=true" \
-e http.cors.allow-origin="*" \
-e ES_JAVA_OPTS="-Xms4g -Xmx4g -Xss128m" elasticsearch:6.4.3
注意:内存使用 & CPUS配置 根据实际服务器情况配置即可
启动 Kibana
docker run -d \
-e ELASTICSEARCH_URL=http://127.0.0.1:9200 \
--name kibana \
--network=container:elasticsearch kibana:6.4.3
启动 Head
docker run -d --name head -p 9100:9100 tobias74/elasticsearch-head:6
安装ik分词插件
进入之前启动好的 Elasticsearch 容器中执行如下命令:
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.4.3/elasticsearch-analysis-ik-6.4.3.zip
杀掉已启动的容器进程
// 杀掉已启动进程 elasticsearch
docker ps | grep elasticsearch | awk '{print $1}' | xargs -i% docker rm -f % 2>/dev/null
// 杀掉已启动进程 kibana
docker ps | grep kibana | awk '{print $1}'|xargs -i% docker rm -f % 2>/dev/null
// 杀掉已启动进程 head
docker ps | grep head | awk '{print $1}'|xargs -i% docker rm -f % 2>/dev/null
手动创建索引
curl -XPUT http://localhost:9200/zhangyu
手动创建 Mapping
curl -XPOST http://localhost:9200/zhangyu/zhangyu/_mapping -H 'Content-Type:application/json' -d'
{
"properties": {
"id": {
"type": "long"
},
"oaNewsId": {
"type": "long"
},
"title": {
"type": "text",
"analyzer": "ik_max_word",
"search_analyzer": "ik_max_word"
},
"content": {
"type": "text",
"analyzer": "ik_max_word",
"search_analyzer": "ik_max_word"
},
"type": {
"type": "long"
}
}
}'
最后修改于 2019-05-24
此篇文章的评论功能已经停用。