【愚公系列】2022年05月 Docker容器 Windows11上ElasticSearch的安装

2022-05-10 12:18:21 浏览数 (1)

文章目录

  • 前言
    • 1.WSL2
  • 一、ElasticSearch安装
    • 1.Docker Desktop
    • 2.运行容器
    • 3.安装可视化软件ElasticHD
    • 4.es跨域问题

前言

要在Windows上安装MongoDB,您首先需要启用WSL2(Windows Subsystem for Linux)。WSL2 允许您在 Windows 上本地运行 Linux 二进制文件。要使此方法正常工作,你需要运行 Windows 10 版本 2004 及更高版本或 Windows 11。

1.WSL2

WSL 2 是适用于 Linux 的 Windows 子系统体系结构的一个新版本,它支持适用于 Linux 的 Windows 子系统在 Windows 上运行 ELF64 Linux 二进制文件。 它的主要目标是提高文件系统性能,以及添加完全的系统调用兼容性。

这一新的体系结构改变了这些 Linux 二进制文件与Windows 和计算机硬件进行交互的方式,但仍然提供与 WSL 1(当前广泛可用的版本)中相同的用户体验。

单个 Linux 分发版可以在 WSL 1 或 WSL 2 体系结构中运行。 每个分发版可随时升级或降级,并且你可以并行运行 WSL 1 和 WSL 2 分发版。 WSL 2 使用全新的体系结构,该体系结构受益于运行真正的 Linux 内核。

一、ElasticSearch安装

1.Docker Desktop

代码语言:javascript复制
docker pull elasticsearch:7.17.1

2.运行容器

代码语言:javascript复制
docker run -d --name es7 -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" elasticsearch:7.17.1

访问:http://localhost:9200

3.安装可视化软件ElasticHD

ElasticHD 是一款 ElasticSearch的可视化应用。不依赖ES的插件安装,更便捷;导航栏直接填写对应的ES IP和端口就可以操作Es了。目前支持如下功能:

  • ES 实时搜索
  • ES DashBoard 数据可视化
  • ES Index Template (在线修改、查看、上传)
  • SQL Converts to DSL
  • ES 基本查询文档

更多的介绍请参考:https://github.com/360EntSecGroup-Skylar/ElasticHD

代码语言:javascript复制
ElasticHD.exe -p 127.0.0.1:9800

4.es跨域问题

如果连接无反应,可能是访问es跨域问题,本地可以修改elasticsearch.yml开启跨域

代码语言:javascript复制
docker ps
docker exec -ti 容器id /bin/bash
/usr/share/elasticsearch# find ./ -name elasticsearch.yml
/usr/share/elasticsearch# vi ./config/elasticsearch.yml


添加以下配置
#开启跨域访问支持,默认为false
http.cors.enabled: true
#跨域访问允许的域名地址,(允许所有域名)以上使用正则
http.cors.allow-origin: /.*/ 

修改elasticsearch head中的数据提交方式

代码语言:javascript复制
find ./ -name vendor.js

文件中有两处
contentType: "application/x-www-form-urlencoded"

修改为
contentType: "application/json;charset=UTF-8"

0 人点赞