Docker 安装Elasticsearch 过程
·
下载 Elasticsearch 镜像
从 Docker Hub 获取官方 Elasticsearch 镜像,推荐使用指定版本以避免兼容性问题。执行以下命令拉取镜像:
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.12.0
创建 Docker 网络
为 Elasticsearch 和后续组件(如 Kibana)创建专用网络,确保容器间通信:
docker network create elastic
启动 Elasticsearch 容器
运行以下命令启动单节点 Elasticsearch 容器,配置内存限制并启用安全功能:
docker run -d \
--name elasticsearch \
--net elastic \
-p 9200:9200 \
-p 9300:9300 \
-e "discovery.type=single-node" \
-e "ES_JAVA_OPTS=-Xms1g -Xmx1g" \
-e "xpack.security.enabled=true" \
docker.elastic.co/elasticsearch/elasticsearch:8.12.0
获取初始密码
若启用了安全功能(xpack.security.enabled=true),初始密码会生成在容器日志中。执行以下命令查看:
docker logs elasticsearch | grep "Password for the elastic user"
验证安装
访问 http://localhost:9200 进行验证,使用以下命令测试(需替换实际密码):
curl -u elastic:your_password http://localhost:9200
重置密码(可选)
若需要重置 elastic 用户密码,进入容器内部执行:
docker exec -it elasticsearch /bin/bash
bin/elasticsearch-reset-password -u elastic
数据持久化配置
为保留数据,需挂载卷到容器。停止并删除现有容器后,重新运行:
docker run -d \
--name elasticsearch \
--net elastic \
-p 9200:9200 \
-p 9300:9300 \
-v es_data:/usr/share/elasticsearch/data \
-e "discovery.type=single-node" \
docker.elastic.co/elasticsearch/elasticsearch:8.12.0
生产环境建议
- 多节点部署时需修改
discovery.type和cluster.initial_master_nodes - 调整
ES_JAVA_OPTS参数分配更多内存 - 使用
-v挂载自定义配置文件(如elasticsearch.yml)
更多推荐


所有评论(0)