Docker的方式安装elasticsearch和kibana 使用
安装elasticsearch、kibana:
#docker pull elasticsearch:7.7.0 docker run --detach \ --name elasticsearch \ --publish 19200:9200 --publish 19300:9300 \ --restart always \ --env "node.name=elasticsearch" \ --env "cluster.name=test-elasticsearch" \ --env "bootstrap.memory_lock=true" \ --env "ES_JAVA_OPTS=-Xms512m -Xmx512m" \ --env "discovery.type=single-node" \ --env "script.painless.regex.enabled=true" \ --volume /data/elasticsearch/elasticsearchdata:/usr/share/elasticsearch/data \ --volume /data/elasticsearch/elasticsearchplugins:/usr/share/elasticsearch/plugins \ --volume /data/elasticsearch/elasticsearchconfig/stopwords.txt:/usr/share/elasticsearch/config/stopwords.txt \ --volume /data/elasticsearch/elasticsearchconfig/synonyms.txt:/usr/share/elasticsearch/config/synonyms.txt \ --volume /etc/localtime:/etc/localtime \ elasticsearch:7.7.0 #chmod -R 777 /data/elasticsearch 安装Elasticsearch时提示权限不够,更改权限即可(chmod -R 777 els) # --env cluster.initial_master_nodes=elasticsearch \ #7.7.0 不需要加 --env "discovery.type=single-node" \ #7.7.0 需要加上 #docker pull kibana:7.7.0 #连接当前机器的docker里面的es #docker run --detach \ --name kibana \ --publish 15601:5601 \ --link elasticsearch:es \ #--link --env "ELASTICSEARCH_HOSTS=http://es:19200" \ --env "LS_JAVA_OPTS=-Xmx256m -Xms256m" \ --volume /etc/localtime:/etc/localtime \ kibana:7.7.0 #连接另外一台机器的docker里面的es,端口也换了 #docker run --detach ` --name kibana-dev ` --publish 15601:5601 ` --add-host=elasticsearch:192.168.0.119 ` #--add-host --env "ELASTICSEARCH_HOSTS=http://elasticsearch:32607" ` --env "LS_JAVA_OPTS=-Xmx256m -Xms256m" ` kibana:7.7.0
ElasticSearch(四)查询、分词器和安装IK插件
安装之后,注意需要重启ES服务期。
curl -XPOST http://localhost:9200/index/_mapping -H 'Content-Type:application/json' -d' { "properties": { "content": { "type": "text", "analyzer": "ik_max_word", "search_analyzer": "ik_smart" } } }'
进入容器里,显示所有插件的名称
./bin/elasticsearch-plugin install -h
进入容器,在容器里安装日语插件:安装成功之后不需要重启ES服务器
#./bin/elasticsearch-plugin install analysis-kuromoji
安装成功之后的目录结构和IK的相似
# 使用标准分词器 statndard GET _analyze { "analyzer": "standard", "text": "奥迪a4l" } # 使用IK分词器 ik_smart GET _analyze { "analyzer": "ik_smart", "text": "奥迪" } # 使用日语分词器 kuromoji GET _analyze { "analyzer": "kuromoji", "text": "東京都は22日、緩和の行程を3段階で示す「ロードマップ」の詳細を発表した。最初の「ステップ1」で、飲食店の営業時間。" }
1、创建名为 tlz_es 的索引库:
PUT tlz_es
2、往索引库添加文档,created:true表示添加文档成功:
POST tlz_es/article { "title":"Java是世界上最好的语言", "content":"Java是世界上最好的语言,不接受反驳" }
3、查询所有文章
GET tlz_es/article/_search
4、修改某一篇文章,复制好_id。此时created:false.如果后面跟一个不存在的id,则为创建操作。
5、条件查询,*表示模糊查询
GET tlz_es/article/_search?q=title:*C*
kibana使用:
GET _search { "query": { "match_all": {} } } # 创建索引库 PUT tlz_es # 往索引库添加文档,created:true表示添加文档成功 POST tlz_es/article { "title":"Java是世界上最好的语言", "content":"Java是世界上最好的语言,不接受反驳" } # 查询所有文章 GET tlz_es/article/_search # 修改某一篇文章 PUT tlz_es/article/AXIRlNX9I0pEtAhy7gZr { "title":"C#是世界上最好的语言", "content":"C#是世界上最好的语言,不接受反驳" } #条件查询,*表示模糊查询 GET tlz_es/article/_search?q=title:*C* # 查看所有索引 GET _cat/indices # 查看所有字段映射 GET lucenespumodel/_mapping/ # 查询全部 GET lucenespumodel/_search # 查询全部,只返回五条记录 GET lucenespumodel/_search { "query": { "match_all": {} }, "size":5 } # 聚合字段 GET lucenespumodel/_search { "query": { "match_all": {} }, "size":5, "aggs" : { "PropertyTextFacet" : { "terms" : { "field" : "PropertyTextFacet" } } } } # 动态列 GET lucenespumodel/_search { "query": { "query_string": { "default_field": "SPUID", "query": "578123" } }, "size":5, "_source": { "includes": ["SPUID","TopicLeiMuMaxSort","TopicLeiMuMaxSort_1223"] } } GET lucenespumodel/_mapping/
分类:
ElasticSearch
, docker
标签:
elasticSearch
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现