使用elasticsearch做商品搜索和参数搜索二:环境搭建

艺帆风顺 发布于 2025-04-03 24 次阅读


项目实战

环境搭建

我们在/root目录下创建elasticsearch目录以及子目录config 、plugins 、config 

当然这是为了做演示和测试直接在root目录下创建,在正式环境中和开发环境中我们应该做好持久化数据文件归类,以便于方便查找和管理。

创建目录以及赋予文件夹权限

mkdir /root/elasticsearch/config -pmkdir /root/elasticsearch/plugins -pmkdir /root/elasticsearch/config -pchmod 777 /root/elasticsearch/configchmod 777 /root/elasticsearch/pluginschmod 777 /root/elasticsearch/plugins

 

 

 

在config目录下创建我们的配置文件

vi /root/elasticsearch/config/elasticsearch.yml

 

 

 

配置内容

network.host: 0.0.0.0 network.bind_host: 0.0.0.0 #外网可访问http.cors.enabled: truehttp.cors.allow-origin: "*"xpack.security.enabled: true # 开启验证xpack.security.transport.ssl.enabled: false # 开启https

 

 

 

容器运行

这里我们使用50006作为暴露端口,single-node作为单实例模式方便运行测试,es版本定为8.2.3

docker stop elasticsearchdocker rm elasticsearchdocker run --name elasticsearch -p 50006:9200 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms1g -Xmx2g" -v /root/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /root/elasticsearch/data:/usr/share/elasticsearch/data -v /root/elasticsearch/plugins:/usr/share/elasticsearch/plugins -d elasticsearch:8.2.3

 

 

 

设置es初始密码

docker exec -it elasticsearch /bin/bashbin/elasticsearch-setup-passwords interactive#user: elastic#password: 123456

 

 

 

创建运维账号

docker exec -it elasticsearch /bin/bashbin/elasticsearch-users useradd logadmin

 

 

 

增加授权

docker exec -it elasticsearch /bin/bashbin/elasticsearch-users roles -a superuser logadminbin/elasticsearch-users roles -a kibana_system logadmin

 

 

 

登录es后台进行查看

http://localhost:50006/

 

 

 

此时会提示输入账号密码,成功验证后网页中就会提示如下提示,其中就有我们es的版本信息

{"name": "462d29953899","cluster_name": "elasticsearch","cluster_uuid": "sMQIN1JgQqmGUG1b3Uy_ow","version": {"number": "8.2.3","build_flavor": "default","build_type": "docker","build_hash": "9905bfb62a3f0b044948376b4f607f70a8a151b4","build_date": "2022-06-08T22:21:36.455508792Z","build_snapshot": false,"lucene_version": "9.1.0","minimum_wire_compatibility_version": "7.17.0","minimum_index_compatibility_version": "7.0.0"},"tagline": "You Know, for Search"}

 

 

 

创建kibana运维面板

同样在root目录创建kibana目录以及config 子目录

mkdir /root/kibana/config -p

 

 

 

创建配置文件

vi /root/kibana/config/kibana.yml 

 

 

 

填写配置

这里的localhost可以填写你本地localhost或者局域网或者外网的ip都可以

50006就是上面es暴露的端口,以便于kibana跟es进行通讯

当然你也可以使用docker compose来管理而不是通过ip来访问

server.host: "0.0.0.0"server.shutdownTimeout: "5s"elasticsearch.hosts: [ "http://localhost:50006" ]monitoring.ui.container.elasticsearch.enabled: truei18n.locale: "zh-CN" 

 

 

 

文件提权

chmod 777 /root/kibana/config/kibana.yml

 

 

 

运行容器

50007这里我们作为

ELASTICSEARCH_USERNAME和ELASTICSEARCH_PASSWORD是我们在最上面创建的运维账号创建运维账号

docker stop kibanadocker rm kibanadocker run -d --name kibana -p 50007:5601 -e "ELASTICSEARCH_HOSTS=http://localhost:50006" -e "ELASTICSEARCH_USERNAME=logadmin" -e "ELASTICSEARCH_PASSWORD="123456"" -v /root/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml kibana:8.2.3

 

 

 

登录es的kibana运维面板,账号密码就是我们上面设置的logadmin/123456

http://localhost:50007

 

 

 

console控制台

http://localhost:50007/app/dev_tools#/console

 

 

 

登录后台

通过http://localhost:50007进入后台

找到开发工具点击进入控制台

接下来,下一篇,说几个简单的查询指令。