查看max_map_count的值 默认是65530
cat /proc/sys/vm/max_map_count
重新设置max_map_count的值
sysctl -w vm.max_map_count=2621442.下载镜像并运行
#拉取镜像 docker pull elasticsearch:7.7.0 #启动镜像 docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.7.0 --name表示镜像启动后的容器名称 -d: 后台运行容器,并返回容器ID; -e: 指定容器内的环境变量 -p: 指定端口映射,格式为:主机(宿主)端口:容器端口3.浏览器访问http://IP:9200 如果出现以下界面就是安装成功 尝试连接easticsearch会发现无法连接上,由于是前后端分离开发,所以会存在跨域问题,需要在服务端做CORS的配置。 解决办法 修改docker中elasticsearch的elasticsearch.yml文件
docker exec -it elasticsearch /bin/bash vi config/elasticsearch.yml 在最下面添加2行 http.cors.enabled: true http.cors.allow-origin: "*" 退出并重启服务 exit docker restart 容器id4.安装 elasticsearch-head
#拉取镜像 docker pull mobz/elasticsearch-head:5 #创建容器 docker create --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5 #启动容器 docker start elasticsearch-head or docker start 容器id (docker ps -a 查看容器id )5.浏览器打开: http://IP:9100 6.ElasticSearch-head 操作时不修改配置,默认会报 406错误码
#复制vendor.js到外部 docker cp 容器id:/usr/src/app/_site/vendor.js /usr/local/ #修改vendor.js vim vendor.js
修改完成在复制回容器
docker cp /usr/local/vendor.js 容器id:/usr/src/app/_site
重启elasticsearch-head
docker restart 容器id最后就可以查询到es数据了 docker安装Kibana
拉取kibana镜像并运行
docker pull kibana:7.5.1 docker run --name kibana -p 5601:5601 -e ELASTICSEARCH_HOSTS=http://192.168.0.200:9200 -v /usr/local/kibana/kibana.yml:/usr/share/kibana/config/kibana.yml -d kibana:7.7.0 --name kibana:将容器命名为kibana -p 5601:5601:将容器的5601端口映射到宿主机的5601端口 -e ELASTICSEARCH_HOSTS=http://192.168.0.200:9200:配置elasticsearch地址 -d kibana:7.7.0:后台运行容器,并返回容器ID1.kibana配置
注意:
运行kibana容器,配置数据卷有坑。挂在到宿主机中的kibana.yml会识别为一个文件夹,所以需要手动在宿主机中创建kibana.yml文件。
运行kibana容器,会将kibana.yml空文件映射进入容器,导致宿主机访问不到容器。需将kibana.yml文件初始化。
# # ** THIS IS AN AUTO-GENERATED FILE ** # # Default Kibana configuration for docker target server.name: kibana server.host: "0" elasticsearch.hosts: [ "http://192.168.1.20:9200" ]2.访问kibana地址 http://ip:5601/
添加端口 firewall-cmd --zone=public --add-port=9300/tcp --permanent 立即生效 firewall-cmd --reload 移除端口 firewall-cmd --zone=public --remove-port=5601/tcp --permanent
阿里云服务器记得打开安全组
SpringBoot + Elasticsearch7.6实现简单查询及高亮分词查询(https://mp.weixin.qq.com/s/QQeB7UQFegr5bb1ft12flw)



