提示:window 环境下 docker 安装 elasticsearch。
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.16.1。
PS: elasticsearch ik分词器插件需要安装#xff0c;需要与分词器插件相匹配 elasticsearch 版本一致请参考#xff1a;https://release.infinilabs.com/analysis-ik/stable/ 选择相应的版本,否则,找不到相应的ik版本。
docker run --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms84m -Xmx512m" -d 镜像ID。
启动Elasticsearch(#xff09;
docker run --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms84m -Xmx512m" -v D:\\project\\docker-elasticsearch\\config\\elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v D:\\project\\docker-elasticsearch\\data:/usr/share/elasticsearch/data -v D:\\project\\docker-elasticsearch\\plugins:/usr/share/elasticsearch/plugins -d 镜像ID。
docker run :操作容器的命令 --name:启动后容器的名称 -p: port 端口映射9200是restful端口,外部访问esc;9300是es集群内部节点之间通信的端口。
docker run :操作容器的命令 --name:启动后容器的名称 -p: port 端口映射9200是restful端口,外部访问esc;9300是es集群内部节点之间通信的端口。 -e: env 环境变量ES_JAVA_OPTS="-Xms84m -Xmx512m": Java写的是Java写的,这是Java虚拟机相关参数的设置 -v: volume 目录挂载映射 -d: daemon后台运行。
PS:将当前es容器的配置信息记录在宿主机上#xff0c;数据,以及插件,这样,即使容器被删除。重生时,保留数据。
修改配置文件 /usr/share/elasticsearch/config/elasticsearch.yml (修改为免密登录和http访问)
cluster.name: "docker-cluster"network.host: 0.0.0.0#----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------## The following settings, TLS certificates, and keys have been automatically # generated to configure Elasticsearch security features on 25-12-2024 06:13:10## --------------------------------------------------------------------------------# Enable security featuresxpack.security.enabled: false 这里是关闭http访问xpack的地方.security.enrollment.enabled: true# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agentsxpack.security.http.ssl: enabled: false keystore.path: certs/http.p12# Enable encryption and mutual authentication between cluster nodesxpack.security.transport.ssl: enabled: true verification_mode: certificate keystore.path: certs/transport.p12 truststore.path: certs/transport.p12#----------------------- END SECURITY AUTO CONFIGURATION -------------------------#关闭http访问限制http.cors.enabled: truehttp.cors.allow-origin: '*'http.cors.allow-headers: '*'
2.安装分词器ik。
在线安装:进入容器cd 到 elasticsearch/bin 在目录下c;执行:
elasticsearch-plugin install https://get.infini.cloud/elasticsearch/analysis-ik/8.16.1。
参考:https://github.com/infinilabs/analysis-ik/releases?page=1。离线安装。#将已下载的zip包复制到容器中的docker cp C。:。\Users\liu1995yz\\Desktop\elasticsearch。-。analysis。-。ik。-。8.16。.1。 .。zip。695f。1235805。:。/。usr。/。share。/。elasticsearch。 /。plugins#进入容器docker exec。 -。it。695f。1235805。/。bin。 /。bash#创建ik目录mkdir。/。usr。/。share。/。elasticsearch。/。plugins。 /。ik#将文件移动到ik目录中的mv。/。usr。/。share。/。elasticsearch。/。plugins。/。elasticsearch。-。analysis。-。ik。-。8.16。.1。 .。zip。/。usr。/。share。/。elasticsearch。/。plugins。 /。ik#进入ikcd。/。usr。/。share。/。elasticsearch。/。plugins。/。ik#解压unzip elasticsearch。-。analysis。-。ik。-。8.16。.1。 .。zip#删除压缩包rm。-。rf elasticsearch。-。analysis。-。ik。-。8.16。.1。
重启容器。
检查。
参考:https://www.cnblogs.com/szwdun/p/10664348.html。
下载:https://github.com/mobz/elasticsearch-head。
安装kibana的Docker。
获取镜像:
PS:kibana版本必须与es版本一致。
启动容器。
docker run --name kibana -e ELASTICSEARCH_HOSTS=http://172.17.0.3:9200/ -p 5601:5601 -d docker.elastic.co/kibana/kibana:8.16.1。
PS:容器中的ip要写ip。