简介
Elasticsearch 是一种基于 Lucene 的搜索引擎。它提供了一个分布式、多租户能力的全文搜索和分析引擎,支持 RESTful Web 接口。Elasticsearch 在搜索、日志分析、实时分析等领域应用广泛。
Docker 是一种容器化平台,利用 Docker 可以方便地管理和部署应用程序。本文将介绍如何使用 Docker 部署 Elasticsearch 应用。
准备工作
在开始部署之前,需要准备以下工具:
- Docker:本文使用 Docker Desktop for Mac 版本 2.2.0.4。
- Elasticsearch:本文使用 Elasticsearch 版本 7.8.0。
创建 Docker 镜像
首先,需要创建 Elasticsearch 的 Docker 镜像。在本地创建一个名为 Dockerfile
的文件,内容如下:
FROM docker.elastic.co/elasticsearch/elasticsearch:7.8.0 # 安装中文分词插件 RUN elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.8.0/elasticsearch-analysis-ik-7.8.0.zip
该 Dockerfile
使用 Elasticsearch 官方提供的镜像作为基础镜像,并在其中安装一个名为 elasticsearch-analysis-ik
的中文分词插件。
然后,执行以下命令构建镜像:
docker build -t elasticsearch-ik:7.8.0 .
其中,-t
指定了镜像的名称和标签,.
指定构建的上下文路径。
启动容器
镜像构建完成后,可以通过以下命令启动 Elasticsearch 容器:
docker run -d -p 9200:9200 -p 9300:9300 elasticsearch-ik:7.8.0
其中,-d
指定容器在后台运行,-p
指定了容器端口和主机端口的映射关系。
启动后,可以通过浏览器访问 http://localhost:9200
验证 Elasticsearch 是否运行成功。
使用 Docker Compose
如果需要在生产环境中部署 Elasticsearch 应用,推荐使用 Docker Compose 进行编排和管理容器。以下是一个示例的 docker-compose.yml
文件:
version: '3' services: elasticsearch: image: elasticsearch-ik:7.8.0 ports: - "9200:9200" - "9300:9300"
在该文件中,定义了一个名为 elasticsearch
的服务,使用上一步构建的镜像,同时指定了端口映射关系。
运行以下命令启动 Docker Compose:
docker-compose up -d
总结
通过本文介绍,可以了解到如何使用 Docker 部署 Elasticsearch 应用。使用 Docker 可以方便地管理和部署应用程序,提高了应用的可移植性和可伸缩性。
同时,本文还介绍了如何使用 Docker Compose 进行容器编排和管理,使得生产环境的部署更加便捷和高效。
完整示例代码可在 GitHub 仓库 中获取。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/664582f6d3423812e437df87