docker run -di --hostname elasticsearch --name elasticsearch --restart=always -p 9200:9200 -p 9300:9300 -p 5601:5601 -e "discovery.type=single-node" -e http.cors.enabled=true -e http.cors.allow-origin="*" -e http.cors.allow-headers=X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization -e http.cors.allow-credentials=true elasticsearch:7.4.2
restart相关参数如下:
选项 作用 –restart=no 不自动重启容器. (默认) –restart=on-failure 容器发生error而退出(容器退出状态不为0)重启容器 on-failure:3 在容器非正常退出时重启容器,最多重启3次 –restart=unless-stopped 在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器 –restart=always 在容器已经stop掉或Docker stoped/restarted的时候才重启容器 如果已经启动的容器项目,则使用update更新:
docker update --restart=always 容器名/ID
docker run -di --name kibana -e ELASTICSEARCH_URL=http://127.0.0.1:9200 --network=container:elasticsearch kibana:7.4.2
# Head 插件(了解) docker run -d --name es_admin -p 9100:9100 mobz/elasticsearch-head:5
输入地址访问:http://192.168.200.129:5601
1、进入容器
docker exec -it elasticsearch /bin/bash
2、安装ik插件(在线较慢)
# 在线下载并安装
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.4.2/elasticsearch-analysis-ik-7.4.2.zip
#退出
exit
#重启容器
docker restart elasticsearch
2、离线安装ik插件(推荐)
准备上传ik插件的压缩包
lcd d:/
上传IK压缩包
put elasticsearch-analysis-ik-7.4.2.zip
安装:
# 1、解压elasticsearch-analysis-ik-7.4.2.zip
mkdir ik
mv elasticsearch-analysis-ik-7.4.2.zip ik
cd ik
unzip elasticsearch-analysis-ik-7.4.2.zip
cd ..
# 2、把解压好的文件夹上传虚拟机
docker cp ik/ elasticsearch:/usr/share/elasticsearch/plugins
# 3、把文件夹复制到es容器 在和ik同级目录下运行
# 8、重启容器
docker restart elasticsearch
# 查看elasticSearch启动日志
docker logs -f elasticsearch
# 重启 Kibana
docker restart kibana
1、上传hf_elasticsearch.tar到 Linux服务上
2、将当前的tar包加载到本地的镜像库中
docker load -i hf_elasticsearch.tar
3、创建容器(已安装完成IK分词器)
docker run -di --hostname elasticsearch --name elasticsearch --restart=always -p 9200:9200 -p 9300:9300 -p 5601:5601 -e "discovery.type=single-node" -e http.cors.enabled=true -e http.cors.allow-origin="*" -e http.cors.allow-headers=X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization -e http.cors.allow-credentials=true hf_elasticsearch:7.4.2
4、浏览器访问测试http://192.168.200.129:9200/ (需要等待一会)
1、上传hf_kibana.tar到 Linux服务上
2、将当前的tar包加载到本地的镜像库中
docker load -i hf_kibana.tar
3、创建容器
docker run -di --name kibana -e ELASTICSEARCH_URL=http://127.0.0.1:9200 --network=container:elasticsearch hf_kibana:7.4.2
4、4、浏览器访问测试http://192.168.200.129:5601/ (需要等待一会)
文档添加失败执行
curl -XPUT -H "Content-Type: application/json" http://127.0.0.1:9200/_all/_settings -d '{"index.blocks.read_only_allow_delete": null}'
GET _search
{
"query": {
"match_all": {}
}
}
#添加索引
PUT itheima
#查询单个索引
GET itheima
#查看所有索引
GET _all
#删除索引
DELETE itheima
#关闭索引
POST itheima/_close
#打开索引
POST itheima/_open
PUT person
#添加索引
PUT person/_mapping
{
"properties":{
"name":{
"type":"text"
},
"age":{
"type":"integer"
}
}
}
#查询索引
GET /person/_mapping
#创建索引并添加映射
PUT /itcast
{
"mappings": {
"properties":{
"name":{
"type":"text"
},
"age":{
"type":"integer"
}
}
}
}
GET /itcast/_mapping
#添加文档,指向id
PUT person/_doc/1
{
"name":"张三",
"age":20,
"address":"北京海淀区"
}
#查询指定id的文档
GET person/_doc/1
#添加文档,不指定id
POST person/_doc
{
"name":"李四",
"age":21,
"address":"北京海淀区"
}
#查询所有的文档
GET person/_search
#删除指定id文档
DELETE person/_doc/1
#查询
GET person/_search
{
"query": {
"term": {
"name": {
"value": "李四"
}
}
}
}
GET person/_search
{
"query": {
"match": {
"address": "北京"
}
}
}
GET /_analyze
{
"analyzer": "ik_max_word",
"text": "乒乓球明年总冠军"
}