Docker 容器中安装 Elasticsearch 的方法

前言

Elasticsearch 是一个开源的高可用的搜索引擎,最初用于全文检索的场景下。经过多次更新迭代,它已经逐渐成为了一套面向大数据场景的解决方案,主要被应用在了数据分析、监控、安全等领域。在实际应用中,Elasticsearch 大多比较常规的安装方式是在宿主机上直接部署。但是,这样的处理方式有时候并不可取,特别是一些特殊环境下。本文主要介绍如何在 Docker 容器中安装 Elasticsearch。

步骤

准备 Elasticsearch 安装包

Elasticsearch 官网 下载对应系统版本的 Elasticsearch 安装包 (以 elasticsearch-7.10.0-linux-x86_64.tar.gz 为例)。此处以 CentOS 系统为例,将安装包解压到宿主机的 /opt 目录下。

创建 Dockerfile 文件

在宿主机上新建一个文件夹,例如 /opt/docker-elasticsearch,在该文件夹下创建一个 Dockerfile 文件,内容如下。

上述 Dockerfile 中主要做了以下几件事情:

  1. 从官方 CentOS 镜像构建 Docker 容器镜像。

  2. 指定 Elasticsearch 版本,这里以 7.10.0 为例。

  3. 安装依赖的包,包括 mc、wget、which 和 Java 环境。

  4. 添加宿主机上解压后的 Elasticsearch 文件,文件路径为 /opt/elasticsearch-${VERSION}。

  5. 设置 Elasticsearch 容器内环境变量,其中 $PATH 和 ES_JAVA_OPTS 分别加入了 Elasticsearch 的二进制文件和 JVM 参数。

  6. 暴露 Elasticsearch 默认端口号 9200 和节点交流端口号 9300。

  7. 启动 Elasticsearch。

构建 Docker 镜像

在当前目录下执行以下命令构建 Elasticsearch Docker 镜像。

-t 指定构建出的 Docker 镜像名称,后面有一个点(.)表示 Dockerfile 文件在当前目录下。

运行 Elasticsearch 容器

使用以下命令运行 Docker 容器。

其中,--name 参数表示指定 Docker 容器的名称,-p 参数表示端口映射,-d 参数表示后台启动。

在浏览器中访问 http://localhost:9200,若看到以下 JSON 数据,则表示 Elasticsearch 已经成功安装在 Docker 容器中。

示例代码

以上是安装 Elasticsearch 在 Docker 容器中的详细步骤,以下是示例代码。

Dockerfile 文件

Docker 镜像构建命令

Docker 容器运行命令

总结

Docker 是一种轻量级的虚拟化技术,可以帮助开发者将应用程序和依赖一起打包运行,简化了应用程序的部署和运维。Elasticsearch 是一个基于 Java 语言的分布式搜索引擎和数据分析引擎,被广泛应用于大数据领域。本文主要介绍了在 Docker 容器中安装 Elasticsearch 的详细步骤,供读者参考。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/652a49e37d4982a6ebc9c59e


纠错
反馈