version: '3.7'
services:
elasticsearch:
container_name: elasticsearch
image: docker.elastic.co/elasticsearch/elasticsearch:8.8.1
volumes:
- /data/docker-data/elasticsearch/data:/usr/share/elasticsearch/data
- /data/docker-data/elasticsearch/logs:/usr/share/elasticsearch/logs
- /data/docker-data/elasticsearch/plugins:/usr/share/elasticsearch/plugins
networks:
- elasticsearch
ports:
- 9200:9200
environment:
- node.name=elasticsearch
- cluster.name=elasticsearch
- cluster.initial_master_nodes=elasticsearch
- discovery.seed_hosts=["127.0.0.1","0.0.0.0", "[::1]"]
- network.host=0.0.0.0
- network.publish_host=elasticsearch
- bootstrap.memory_lock=true
- xpack.security.enabled=false
- xpack.security.http.ssl.enabled=false
- ES_JAVA_OPTS=-Xms2G -Xmx2G
ulimits: { nofile: { soft: 262144, hard: 262144 }, memlock: -1 }
healthcheck:
test: curl --head --max-time 120 --retry 120 --retry-delay 1 --show-error --silent http://elasticsearch:9200
extra_hosts:
- "elasticsearch:127.0.0.1"
kibana:
container_name: kibana
image: docker.elastic.co/kibana/kibana:8.8.1
depends_on: [ 'elasticsearch' ]
networks:
- elasticsearch
ports:
- 5601:5601
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
- KIBANA_LOGGING_QUIET=true
healthcheck:
test: curl --max-time 120 --retry 120 --retry-delay 1 --show-error --silent http://localhost:5601
extra_hosts:
- "elasticsearch:127.0.0.1"
networks:
elasticsearch:
driver: bridge
#docker run --name es01 --net elastic -p 9200:9200 -it -m 1GB docker.elastic.co/elasticsearch/elasticsearch:8.11.3
#docker-compose -f docker_compose_es.yml up
#chmod 777 data -R
#https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html
#http://127.0.0.1:5601/
#vm.max_map_count=655360
#vim /etc/sysctl.conf
#sysctl -p /etc/sysctl.conf/
#https://www.cnblogs.com/zyl88/p/17611919.html
#https://github.com/mobz/elasticsearch-head crx目录下将crx后缀改成rar,然后解压缩,最后加载已解压的插件
# es插件:
# elasticsearch-analysis-ik: https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v8.8.1
# elasticsearch-analysis-pinyin: https://github.com/medcl/elasticsearch-analysis-pinyin/releases/tag/v8.11.1 #TODO
# GET /_cat/plugins?v 获取安装的插件
#
# 设置mapping: POST /index/_mapping
#{
#
# "properties": {
#
# "content": {
#
# "type": "text",
#
# "analyzer": "ik_max_word",
#
# "search_analyzer": "ik_smart"
#
# }
#
# }
#}
PUT /test_pinyin_analyzer/
{
"settings" : {
"analysis" : {
"analyzer" : {
"pinyin_analyzer" : {
"tokenizer" : "my_pinyin"
}
},
"tokenizer" : {
"my_pinyin" : {
"type" : "py",
"keep_separate_first_letter" : false,
"keep_full_pinyin" : true,
"keep_joined_full_pinyin": false,
"keep_none_chinese_together": true,
"keep_none_chinese_in_first_letter": false,
"keep_none_chinese_in_joined_full_pinyin": false,
"keep_original" : true,
"limit_first_letter_length" : 16,
"lowercase" : true,
"remove_duplicated_term" : true,
}
}
}
}
}
#keep_first_letter when this option enabled, eg: 刘德华>ldh, default: true
#keep_separate_first_letter when this option enabled, will keep first letters separately, eg: 刘德华>l,d,h, default: false, NOTE: query result maybe too fuzziness due to term too frequency
#limit_first_letter_length set max length of the first_letter result, default: 16
#keep_full_pinyin when this option enabled, eg: 刘德华> [liu,de,hua], default: true
#keep_joined_full_pinyin when this option enabled, eg: 刘德华> [liudehua], default: false
#keep_none_chinese keep non chinese letter or number in result, default: true
#keep_none_chinese_together keep non chinese letter together, default: true, eg: DJ音乐家 -> DJ,yin,yue,jia, when set to false, eg: DJ音乐家 -> D,J,yin,yue,jia, NOTE: keep_none_chinese should be enabled first
#keep_none_chinese_in_first_letter keep non Chinese letters in first letter, eg: 刘德华AT2016->ldhat2016, default: true
#keep_none_chinese_in_joined_full_pinyin keep non Chinese letters in joined full pinyin, eg: 刘德华2016->liudehua2016, default: false
#none_chinese_pinyin_tokenize break non chinese letters into separate pinyin term if they are pinyin, default: true, eg: liudehuaalibaba13zhuanghan -> liu,de,hua,a,li,ba,ba,13,zhuang,han, NOTE: keep_none_chinese and keep_none_chinese_together should be enabled first
#keep_original when this option enabled, will keep original input as well, default: false
#lowercase lowercase non Chinese letters, default: true
#trim_whitespace default: true
#remove_duplicated_term when this option enabled, duplicated term will be removed to save index, eg: de的>de, default: false, NOTE: position related query maybe influenced
#ignore_pinyin_offset
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交