使用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服务。根据需要,你还可以添加更多的服务和配置。

相关推荐
武子康1 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
Alsn864 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
程序员老赵4 天前
服务器没有桌面?Docker 跑个 Chrome,浏览器就能远程用
docker·容器·devops
杨浦老苏4 天前
轻量级Docker仪表板Servedash
运维·docker·监控·群晖·仪表板
正经教主4 天前
【docker基础】 第八周:容器监控与应用更新策略
运维·docker·容器
kiros_wang4 天前
Docker 使用完整指南
运维·docker·容器
正经教主4 天前
【docker基础】第九周:Docker安全与镜像优化
运维·docker·容器
CodeStats4 天前
【虚拟机】 从 CPU 指令到虚拟机隔离:虚拟机就是一个“模拟了完整硬件的普通进程”
java·docker
ai产品老杨5 天前
突破安防碎片化:基于 Docker 与边缘计算的 AI 视频智能化中台,如何通过 GB28181/RTSP 统一接入与全套源码交付实现二次开发自由?
人工智能·docker·边缘计算
正经教主5 天前
【docker基础】第十三周:学习总结与进阶方向【完结】
运维·docker·容器