docker创建elasticsearch、elasticsearch-head部署及简单操作

这篇具有很好参考价值的文章主要介绍了docker创建elasticsearch、elasticsearch-head部署及简单操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

elasticsearch部署

1  拉取elasticsearch镜像


     docker pull elasticsearch:7.7.0

2   创建文件映射路径

     mkdir /mydata/elasticsearch/data
     mkdir /mydata/elasticsearch/plugins
     mkdir /mydata/elasticsearch/config

3  文件夹授权    


    chmod 777 /mydata/elasticsearch/data

4  修改配置文件


    cd /mydata/elasticsearch/config
    vi elasticsearch.yml
    填入如下内容:
    #集群名称
    cluster.name: "elasticsearch"
    network.host: 0.0.0.0
    #跨域设置
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    #http端口
    http.port: 9200
   #java端口
   transport.tcp.port: 9300

5  运行镜像:


   docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -d  -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx512m"  \
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data -v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins  \
-v /data/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml elasticsearch:7.7.0

6  访问页面:

   http://192.168.56.102:9200 查看是否部署成功

docker创建elasticsearch、elasticsearch-head部署及简单操作,docker搭建各项中间件操作,docker,elasticsearch,jenkins

如出现如上内容,表示elasticsearch部署成功,就可以进行搜索操作了

elasticsearch-head部署

    为了更好的使用elasticsearch,需要部署elasticsearch-head插件

1  #拉取镜像


      docker pull mobz/elasticsearch-head:5

  2  启动容器


    docker run -d --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5

   3 访问elasticsearch-head页面内容

        docker创建elasticsearch、elasticsearch-head部署及简单操作,docker搭建各项中间件操作,docker,elasticsearch,jenkins

elasticsearch-head的页面操作

    1  查询所有数据

                docker创建elasticsearch、elasticsearch-head部署及简单操作,docker搭建各项中间件操作,docker,elasticsearch,jenkins

   出现如上所示报错。解决方案如下:

  1  docker exec -it {elasticearch-head}容器名称 /bin/bash

   2  修改elasticsearch-head的js文件

       vi  /usr/src/app/_site/vendor.js

      a  第6886行 :/contentType: "application/x-www-form-urlencoded
          改为 :contentType: "application/json;charset=UTF-8"

       b  第7574行 var inspectData = s.contentType === "application/x-www-form-urlencoded" &&
           改为 var inspectData = s.contentType === "application/json;charset=UTF-8" &&

   3  重启elasticsearch-head容器

其他页面操作参见博客:

ElasticSearch-Head操作Elasticsearch进行查询数据(查询所有数据,查询单个索引所有数据,查询单个索引指定类型所有数据,根据指定条件查询数据)_elasticsearch-head 查询-CSDN博客

使用java操作elasticsearch

 1 引入依赖:

  文章来源地址https://www.toymoban.com/news/detail-725507.html

<dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>elasticsearch-rest-high-level-client</artifactId>
            <version>7.7.0</version>
            <exclusions>
                <exclusion>
                    <groupId>org.elasticsearch</groupId>
                    <artifactId>elasticsearch</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.elasticsearch</groupId>
            <artifactId>elasticsearch</artifactId>
            <version>7.7.0</version>
        </dependency>

2  相关crud操作

public class EsHandler {

    private static final String ES_SERVER_ADDRESS = "192.168.56.102";
    private static final String IDX_NAME = "employee";

    private static RestHighLevelClient CLIENT = null;

    public static void main(String[] args) throws IOException {
        // 初始化
        init();

        // 创建索引数据
        createIndex();
        // 修改数据
//        updateDoc();
        // 删除数据
//        deleteDoc();
        // 查询数据
//        searchDoc();

        // 关闭连接
        close();

    }

    private static void init() {
        CLIENT = new RestHighLevelClient(RestClient.builder(
                new HttpHost(ES_SERVER_ADDRESS,9200,"http")));

    }

    private static void close() throws IOException {
        CLIENT.close();
    }

    private static void createIndex() throws IOException {
        IndexRequest indexRequest = new IndexRequest(IDX_NAME);

        Map<String, String> insertInfo = new HashMap<>();
        insertInfo.put("name","wangwu");

        indexRequest.source(insertInfo);

        IndexResponse response = CLIENT.index(indexRequest, RequestOptions.DEFAULT);

        System.out.println("ID:" + response.getId() + "/t" + "RESULT:" + response.getResult());

    }

    private static void updateDoc() throws IOException {
        UpdateRequest updateRequest = new UpdateRequest(IDX_NAME,"8");

        // 注意此处的泛型类型:<String,Object>,如果是其他的泛型类型,es的api会认为是另一套api调用
        Map<String, Object> sourceInfo = new HashMap<>();
        sourceInfo.put("name","骡子摊");

//        updateRequest.doc("name","隆昌羊肉汤");

        updateRequest.doc(sourceInfo);

        updateRequest.timeout("1s");
        updateRequest.retryOnConflict(3);

        UpdateResponse response = CLIENT.update(updateRequest, RequestOptions.DEFAULT);

        System.out.println("ID:" + response.getId() + "/t" + "RESULT:" + response.getResult());
    }

    private static void deleteDoc() throws IOException {
        DeleteRequest deleteRequest = new DeleteRequest(IDX_NAME,"9");

        DeleteResponse response = CLIENT.delete(deleteRequest, RequestOptions.DEFAULT);

        System.out.println("ID:" + response.getId() + "/t" + "RESULT:" + response.getResult());
    }

    /**
     *
     * @throws IOException
     */
    private static void searchDoc() throws IOException {

        SearchSourceBuilder builder = new SearchSourceBuilder()
                .query(QueryBuilders.matchQuery("message", "execute"));

        SearchRequest searchRequest = new SearchRequest();
        searchRequest.indices("rizhi-log-*");
        searchRequest.source(builder);
        // 执行请求
        SearchResponse response = CLIENT.search(searchRequest, RequestOptions.DEFAULT);
        // 解析查询结果
        System.out.println(response.toString());
    }

到了这里,关于docker创建elasticsearch、elasticsearch-head部署及简单操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • elasticsearch-head连接不上elasticsearch

    在成功开启 elasticsearch和elasticsearch-head的前提下,发现连接不上! 打开浏览器开发者工具查看,发现跨域了! 解决办法 在elasticsearch的配置文件里加上允许跨域的配置 http.cors.enabled: true http.cors.allow-origin: \\\"*\\\" 文件路径:config/elasticsearch.yml  再次重新启动elasticsearch 再刷新一下

    2024年02月12日
    浏览(73)
  • Elasticsearch-head插件的安装

    介绍三种安装es-head插件的方式 1、Google浏览器插件 安装 Google浏览器插件 ,直接访问Elasticsearch 2、npm安装 下载源码 ,编译安装,在nodejs环境下运行插件 通过chrome安装插件的方式提供一个可操作es的图形化界面。 在chrome 浏览器中,通过“扩展程序” 添加 elasticsearch head 插件的

    2024年02月09日
    浏览(35)
  • Windows下的Elasticsearch-head安装

    参考: https://gitcode.net/mirrors/mobz/elasticsearch-head 需要用到 npm 命令,这里可以提前下载安装下 Node.js 即可自动安装 npm ; Node.js 下载安装地址: https://nodejs.org/en/download npm install 可能出现的报错: 报错日志提示文件如无法下载,两种方式处理: (出自:https://www.cnblogs.com/wlgwili

    2024年02月07日
    浏览(40)
  • elasticsearch-head如何连接设置密码的elasticsearch

    先修改配置,在elasticsearch.yml文件中加入以下配置 重启es 启动es-head 访问es-head的url要变动 原来是http://IP:9100 现在因为加密了,所以要做身份验证,格式:http://IP:9100/?auth_user=用户名auth_password=密码 通过该url访问es-head,然后注正常填写es的地址即可 通过以上步骤就能成功连接加

    2024年02月11日
    浏览(50)
  • elasticsearch-head 无法连接elasticsearch的原因和解决

    首先确定的是,elasticsearch-head启动无误,elasticsearch启动无误。 点击连接elasticsearch出现这个问题:提示未连接 作为一个web开发,通常会查看请求是否出错,关键是请求没有出错,就是没有返回值: 然后再浏览器打开,有返回结果: 留意了一下请求,居然是options请求: 在p

    2024年02月15日
    浏览(42)
  • ElasticSearch可视化工具:kibana + elasticsearch-head

    kibana 下载 地址:https://www.elastic.co/cn/downloads/kibana 下载别的版本:https://www.elastic.co/cn/downloads/past-releases#kibana 将Kibana安装包解压缩 进入config目录,在kibana.yml中添加es服务器地址。(如果之前没有动es的端口,修改kibana配置省略即可) 双击bin目录下的kibana.bat文件 报错 Kibana(

    2024年04月24日
    浏览(35)
  • Elasticsearch-head访问 elasticsearch 报错 401 解决方案

    配置 值 系统 MacOS es 版本 8.3 401 报错本质没有权限, 先记住这个事.然后顺着这个思路去解决, 因为 elasticsearch 在启动时会运行 xpack(这东西是什么, 这里不做讨论) 当你第一次运行 elasticsearch 的时候它会 给你用户名, 密码, 以及 kibana 的 token(30分钟有效期)等, 这次运行之后你就会

    2024年01月17日
    浏览(35)
  • Elasticsearch 浏览器查询工具elasticsearch-head的使用

    有时我们需要查看es中的内容,一下提供一个比较简单的方式,通过浏览器插件就能实现。 https://download.csdn.net/download/fen_dou_shao_nian/87407265 下载完成后,解压到任意位置。 2.3.1 查看所有索引 2.3.2 ★浏览数据 2.3.3 查询数据

    2024年02月13日
    浏览(43)
  • windows环境下ElasticSearch+kibana+ElasticSearch-Head安装搭建

    windows环境下ElasticSearch+kibana+ElasticSearch-Head搭建安装 1.elasticsearch是什么? Elasticsearch(简称ES)是一个基于Lucene开源的高扩展的分布式全文搜索引擎。ES不仅仅只是全文搜索,还支持结构化搜索、数据分析、复杂的语言处理、地理位置和对象间关联关系等。 2.Lucene和ElasticSearch有

    2024年01月21日
    浏览(67)
  • Google浏览器 安装 Elasticsearch-head 插件

    下载地址: https://github.com/liufengji/es-head 1)将 elasticsearch-head.crx 更名为 elasticsearch-head.rar,然后解压缩 2)进入elasticsearch-head文件夹将_metadata文件夹重命名为metadata 在Google浏览器中打开扩展程序,点击加载已解压的扩展程序,选择解压elasticsearch-head文件夹即可添加插件成功 点

    2024年02月13日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包