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

相关推荐
天上掉下来个程小白4 小时前
Docker-14.项目部署-DockerCompose
运维·docker·微服务·容器
星霜笔记8 小时前
Docker 部署 MariaDB+phpMyAdmin+Nextcloud 完整教程
运维·数据库·docker·容器·mariadb
数据知道11 小时前
容器化部署:用Docker封装机器翻译模型与服务详解
docker·容器·机器翻译
敲上瘾17 小时前
Linux系统cgroups资源精细化控制基础
linux·测试工具·docker·压力测试·cgroups
伊成19 小时前
Docker 部署 Nginx 完整指南
nginx·docker·容器
落日漫游20 小时前
K8s核心组件全解析
运维·docker·运维开发
江湖有缘1 天前
【Docker项目实战】使用Docker部署Notepad轻量级记事本
docker·容器·notepad++
BTU_YC1 天前
docker compose部署mysql
mysql·adb·docker
Python私教1 天前
Docker in Test:用一次性的真实环境,终结“测试永远跑不通”魔咒
运维·docker·容器
UPToZ1 天前
【Docker】搭建一个高性能的分布式对象存储服务 - MinIO
分布式·docker·容器