# Docker 安装

URL: https://caijiao.org/elasticsearch/01.intro/05.installation-docker
Source: docs/elasticsearch/01.intro/05.installation-docker.md
Description: 本章讲解如何通过 Docker 安装和运行 Elasticsearch，适合开发者快速搭建测试环境并集成至容器化工作流中。

使用 Docker 安装 Elasticsearch 是一种快速、轻量的方式，特别适合开发测试和 CI/CD 场景。无需复杂配置即可启动服务，灵活性高，部署效率快。

## 1. 安装 Docker

请先确保系统已安装并启动 Docker：

- [Docker 官方安装文档](https://docs.docker.com/get-docker/)

## 2. 拉取官方 Elasticsearch 镜像

```bash
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.13.0
````

可替换为任意指定版本号。

## 3. 运行单节点容器

```bash
docker run -d --name elasticsearch \
  -p 9200:9200 -p 9300:9300 \
  -e "discovery.type=single-node" \
  -e "xpack.security.enabled=false" \
  docker.elastic.co/elasticsearch/elasticsearch:8.13.0
```

参数说明：

* `9200`: REST API 端口
* `9300`: 节点间通信端口
* `discovery.type=single-node`: 单节点模式（避免启动集群失败）
* `xpack.security.enabled=false`: 关闭默认安全认证（开发环境常用）

## 4. 验证服务是否启动

```bash
curl http://localhost:9200
```

返回包含版本信息、集群名称等字段表示成功运行。

## 5. 常见问题

* 内存不足：可通过 `-e "ES_JAVA_OPTS=-Xms1g -Xmx1g"` 指定 Java 堆大小
* 数据持久化：挂载数据目录 `-v esdata:/usr/share/elasticsearch/data`

---

使用 Docker 快速部署 Elasticsearch，不仅方便测试环境管理，也为后续与 Kibana、Logstash 等组件的容器化集成打下基础。
