使用Docker Compose运行Elasticsearch

使用Docker Compose运行Elasticsearch可以帮助你快速搭建和管理Elasticsearch服务。以下是具体步骤:

1. 安装Docker和Docker Compose

确保你已经安装了Docker和Docker Compose。如果没有安装,可以参考官方文档进行安装:

2. 创建项目目录

创建一个目录来存放项目文件,例如my-elasticsearch-project

sh 复制代码
mkdir my-elasticsearch-project
cd my-elasticsearch-project

3. 创建docker-compose.yml文件

在项目目录下创建docker-compose.yml文件:

sh 复制代码
touch docker-compose.yml

docker-compose.yml内容示例:

yaml 复制代码
version: '3.8'

services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.13.4
    container_name: elasticsearch
    environment:
      - discovery.type=single-node
      - xpack.security.enabled=false
      - ES_JAVA_OPTS=-Xms512m -Xmx512m
    ports:
      - "9200:9200"
    volumes:
      - esdata:/usr/share/elasticsearch/data

volumes:
  esdata:
    driver: local

解释:

  • image:指定Elasticsearch镜像。
  • container_name:给容器命名。
  • environment:配置环境变量:
    • discovery.type=single-node:配置为单节点模式。
    • xpack.security.enabled=false:禁用X-Pack安全功能。
    • ES_JAVA_OPTS=-Xms512m -Xmx512m:设置JVM内存选项。
  • ports:将主机的9200端口映射到容器的9200端口。
  • volumes:持久化存储数据。

4. 运行Docker Compose

在项目目录下运行以下命令来启动Elasticsearch服务:

sh 复制代码
docker-compose up -d

5. 验证Elasticsearch是否运行

打开浏览器,访问http://localhost:9200,你应该会看到Elasticsearch的欢迎信息,类似于:

json 复制代码
{
  "name" : "elasticsearch",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "some_uuid",
  "version" : {
    "number" : "7.13.4",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "abcdefg",
    "build_date" : "2021-06-10T21:01:55.251515791Z",
    "build_snapshot" : false,
    "lucene_version" : "8.8.2",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

6. 管理容器

使用以下命令管理Docker Compose容器:

  • 查看服务状态:
sh 复制代码
docker-compose ps
  • 停止服务:
sh 复制代码
docker-compose down
  • 查看容器日志:
sh 复制代码
docker-compose logs elasticsearch
  • 重启服务:
sh 复制代码
docker-compose restart elasticsearch

7. 更新配置

如果需要更新Elasticsearch配置,可以修改docker-compose.yml文件,然后重新加载配置:

sh 复制代码
docker-compose up -d

通过以上步骤,你可以在Docker Compose中成功运行并管理Elasticsearch服务。根据需要,你还可以添加更多的服务和配置。

相关推荐
java_logo4 小时前
Docker 部署 CUPS Web:浏览器即可管理打印机与打印任务
docker·容器·打印机·轩辕镜像·cups web·cups web 镜像部署·cups web 部署教程
数据知道6 小时前
容器安全入门:Docker 逃逸原理与 5 个经典 CVE
安全·网络安全·docker·容器
giaming0239 小时前
告别Docker Desktop!一款轻量级原生开发环境管理工具:FlyEnv
运维·docker·容器
自强的小白9 小时前
Docker命令
java·docker·容器
暗影凋落11 小时前
docker-image 工具展示更详细镜像层内容
运维·docker·容器
极客先躯12 小时前
高级java每日一道面试题-2026年05月11日-实战篇[Docker]-如何容器化金融产品推荐系统?
java·运维·docker·容器·金融·高级面试·金融产品推荐系统
江湖有缘13 小时前
Docker实战 : 使用Docker部署Musicn音乐下载工具
docker·容器·eureka
沉迷学习 日益消瘦14 小时前
17-Custom Resource 入门
docker·容器·kubernetes
流星白龙14 小时前
【Docker】2.Docker 核心原理与架构
docker·架构·dubbo
江湖有缘1 天前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器