
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该Docker镜像提供易于配置的Elasticsearch节点,通过端口映射可轻松创建任意规模的集群。只要版本匹配,可将容器化节点与"真实"Elasticsearch节点混合使用,适用于快速搭建搜索服务、日志分析平台等场景。
Elasticsearch 5.x要求设置足够的虚拟内存mmap计数以确保稳定的生产使用,参考官方指南获取更多信息。
_cat/health端点启动单节点Elasticsearch,监听标准端口:
bashdocker run -d -p 9200:9200 -p 9300:9300 itzg/elasticsearch
验证节点是否存活,访问:http://DOCKERHOST:9200/,应返回类似以下响应:
json{ "status" : 200, "name" : "Charon", "version" : { "number" : "1.3.5", "build_hash" : "4a50e7df768fddd572f48830ae9c35e4ded86ac1", "build_timestamp" : "2014-11-05T15:21:28Z", "build_snapshot" : false, "lucene_version" : "4.9" }, "tagline" : "You Know, for Search" }
其中DOCKERHOST为运行Docker的主机实际 hostname。
在单台Docker主机上运行3节点集群:
bashdocker run -d --name es0 -p 9200:9200 itzg/elasticsearch docker run -d --name es1 --link es0 -e UNICAST_HOSTS=es0 itzg/elasticsearch docker run -d --name es2 --link es0 -e UNICAST_HOSTS=es0 itzg/elasticsearch
检查集群健康状态,访问:http://192.168.99.100:9200/_cluster/health?pretty,应返回类似:
json{ "cluster_name" : "elasticsearch", "status" : "green", "timed_out" : false, "number_of_nodes" : 3, "number_of_data_nodes" : 3, "active_primary_shards" : 0, "active_shards" : 0, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 0 }
若已初始化Docker Swarm集群,下载https://raw.githubusercontent.com/itzg/dockerfiles/master/elasticsearch/docker-compose.yml%E5%B9%B6%E9%83%A8%E7%BD%B2%EF%BC%9A
bashdocker stack deploy -c docker-compose.yml es
通过docker service ls确认服务运行状态,应包含1个主节点、2个数据节点、1个网关节点和1个Kibana实例:
ID NAME MODE REPLICAS IMAGE 9nwnno8hbqgk es_kibana replicated 1/1 kibana:latest f5x7nipwmvkr es_gateway replicated 1/1 es om8rly2yxylw es_data replicated 2/2 es tdvfilj370yn es_master replicated 1/1 es
Kibana可通过端口5601访问。
容器内置HEALTHCHECK机制,每30秒查询_cat/health端点。通过docker ps查看容器状态,健康状态显示为:
Up 14 minutes (healthy)
通过docker inspect查看健康检查历史:
bashdocker inspect -f "{{json .State.Health}}" es
返回类似:
json{"Status":"healthy","FailingStreak":0,"Log":[...
9200 - HTTP REST接口9300 - 原生传输接口/data - 数据存储路径(对应path.data)/conf - 配置文件路径(对应path.conf)通过docker run -e NAME=VALUE指定配置,或在运行容器的/conf/env文件中设置(格式为NAME=VALUE)。未明确支持的配置可通过OPTS环境变量传递,默认OPTS=-Dnetwork.bind_host=_non_loopback_(自2.0版本起,bind_host默认值为localhost,此设置便于容器端口映射)。
集群名称
指定集群名称(默认"elasticsearch"):
bash-e CLUSTER=dockers
Zen Unicast主机
多物理主机集群中,若网络不支持多播,可通过逗号分隔的HOST:PORT列表指定集群节点:
bash-e UNICAST_HOSTS=HOST:PORT[,HOST:PORT]
示例:
bash-e UNICAST_HOSTS=192.168.0.100:9300
插件安装
通过逗号分隔的插件ID列表安装插件:
bash-e PLUGINS=ID[,ID]
示例(安装Marvel插件):
bash-e PLUGINS=elasticsearch/marvel/latest
更多插件参考官方插件列表。
发布地址
覆盖容器内部IP地址,指定物理网络地址和端口:
bash-e PUBLISH_AS=DOCKERHOST:9301
作者注:实际使用中很少需要此配置,除日志显示的IP地址外,Elasticsearch对网络配置有良好的容错性。
节点名称
指定节点名称(默认随机分配):
bash-e NODE_NAME=Docker
节点类型
根据Elasticsearch节点文档,支持多种节点类型,通过TYPE变量指定:
Docker Compose示例:
yamlversion: '3' services: gateway: image: itzg/elasticsearch environment: UNICAST_HOSTS: master TYPE: GATEWAY ports: - "9200:9200" master: image: itzg/elasticsearch environment: UNICAST_HOSTS: gateway TYPE: MASTER MIN_MASTERS: 2 data: image: itzg/elasticsearch environment: UNICAST_HOSTS: master,gateway TYPE: DATA kibana: image: kibana ports: - "5601:5601" environment: ELASTICSEARCH_URL: http://gateway:9200
最小主节点数
配置最小主节点数以避免网络中断时的“脑裂”问题,计算公式为(主节点数 / 2) + 1,通过MIN_MASTERS设置:
bash-e MIN_MASTERS=2
结合上述Compose示例,扩展主节点至3个时:
bashdocker-compose scale master=3
多网络绑定(Swarm模式)
Docker Swarm模式下容器可能有多个网络设备,可通过DISCOVER_TRANSPORT_IP和DISCOVER_HTTP_IP指定网络设备:
bash-e DISCOVER_TRANSPORT_IP=eth0 -e DISCOVER_HTTP_IP=eth2
JVM选项(堆大小等)
默认Java堆大小为1GB,通过ES_JAVA_OPTS调整JVM参数:
bash-e ES_JAVA_OPTS="-Xms16g -Xmx16g"
更多信息参考Elasticsearch堆大小指南。
以下是 itzg/elasticsearch 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。



来自真实用户的反馈,见证轩辕镜像的优质服务