本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
elasticsearch Docker 镜像下载 - 轩辕镜像
elasticsearch 镜像详细信息和使用指南
elasticsearch 镜像标签列表和版本信息
elasticsearch 镜像拉取命令和加速下载
elasticsearch 镜像使用说明和配置指南
Docker 镜像加速服务 - 轩辕镜像平台
国内开发者首选的 Docker 镜像加速平台
极速拉取 Docker 镜像服务
相关 Docker 镜像推荐
热门 Docker 镜像下载
elasticsearch 镜像详细信息
elasticsearch 镜像标签列表
elasticsearch 镜像使用说明
elasticsearch 镜像拉取命令
Docker 镜像加速服务
轩辕镜像平台优势
镜像下载指南
相关 Docker 镜像推荐
elasticsearch 镜像详细说明
elasticsearch 使用指南
elasticsearch 配置说明
elasticsearch 官方文档
Bitnami Elasticsearch Stack
1. 镜像概述和主要用途
Elasticsearch 是一个分布式搜索和分析引擎,适用于网络搜索、日志监控和实时分析场景,是大数据应用的理想选择。本 Bitnami Helm Chart 用于在 Kubernetes 集群上通过 Helm 包管理器快速部署 Elasticsearch 集群。
Elasticsearch 官方概述
商标说明:本软件列表由 Bitnami 打包。所提及的商标分属各自公司所有,使用这些商标并不意味着任何关联或背书。
2. 核心功能和特性
- 分布式架构:支持多节点集群部署,包含 master、data、coordinating、ingest 等角色分离
- 监控集成:可与 Prometheus 集成,通过 elasticsearch_exporter 暴露指标
- 安全特性:支持 TLS 加密(REST 端点和传输层)、内置用户认证
- Kibana 集成:作为子 Chart 提供一键启用 Kibana 的能力
- 灵活部署:支持单节点模式(所有角色合一)和多节点集群模式
- 数据持久化:使用 Persistent Volume 存储 Elasticsearch 数据
- 内核参数自动配置:通过 initContainer 自动调整内核参数(如 vm.max_map_count)
- 快照与恢复:支持配置共享文件系统作为快照仓库
- 扩展性:支持添加自定义 Sidecar 容器、Init 容器和环境变量
3. 使用场景和适用范围
适用场景
- 开发/测试环境:快速部署 Elasticsearch 集群用于功能验证和集成测试
- 日志管理:集中收集、存储和分析应用日志、系统日志
- 实时分析:对实时数据流进行聚合和分析(如用户行为、业务指标)
- 搜索引擎:构建应用内搜索功能(如商品搜索、文档检索)
适用范围
- 社区用户:可使用公共仓库(docker.io/bitnami)的镜像进行开发,仅支持 "latest" 标签且无长期更新
- 生产环境:推荐采用 Bitnami Secure Images,包含硬化容器、CVE 透明度(VEX/KEV)、SBOM 和企业支持
4. 重要注意事项:Bitnami 镜像仓库变更通知
自 2025 年 8 月 28 日起,Bitnami 将升级其公共镜像仓库,推出 Bitnami Secure Images 计划,具体变更如下:
- 首次向社区用户开放热门容器镜像的安全优化版本
- 逐步弃用免费 tier 中非硬化的 Debian 基础镜像,公共仓库将仅保留少量硬化镜像,且仅提供 "latest" 标签(用于开发目的)
- 8 月 28 日起,所有现有容器镜像(包括历史版本标签,如 2.50.0、10.6)将从公共仓库(docker.io/bitnami)迁移至 "Bitnami Legacy" 仓库(docker.io/bitnamilegacy),且不再接收更新
- 生产环境建议采用 Bitnami Secure Images,提供硬化容器、更小攻击面、CVE 透明度及长期支持
详情参见 Bitnami Secure Images 公告。
5. 使用方法和配置说明
5.1 前提条件
- Kubernetes 集群版本 1.23+
- Helm 版本 3.8.0+
- 底层基础设施支持 PV 动态供应
5.2 安装 Chart
快速安装
helm install my-release oci://registry-1.docker.io/bitnamicharts/elasticsearch
自定义安装
指定发布名称和仓库参数:
helm install my-release oci://REGISTRY_NAME/REPOSITORY_NAME/elasticsearch
注意:需将
REGISTRY_NAME和REPOSITORY_NAME替换为实际 Helm 仓库地址。Bitnami 官方仓库示例:REGISTRY_NAME=registry-1.docker.io,REPOSITORY_NAME=bitnamicharts。
5.3 配置详情
5.3.1 资源请求与限制
Bitnami Charts 允许为所有容器设置资源请求和限制,通过 resources 参数配置。生产环境必须设置资源请求,且需根据实际场景调整。
可通过 resourcesPreset 参数使用预设资源配置(如 small、medium),但生产环境建议手动配置以适配具体需求。详情参见 Kubernetes 资源管理文档。
5.3.2 滚动标签与不可变标签
生产环境强烈建议使用不可变标签,避免因标签更新导致部署自动变更。Bitnami 会在主容器版本更新、重大变更或存在严重漏洞时发布新 Chart。
5.3.3 Prometheus 指标集成
通过设置 metrics.enabled=true 启用 Prometheus 集成,将在所有 Pod 中部署包含 elasticsearch_exporter 的 Sidecar 容器,并创建 metrics Service(支持自动被 Prometheus 抓取的注解配置)。
前提条件
需已安装 Prometheus 或 Prometheus Operator。推荐使用 Bitnami Prometheus Helm Chart 或 Bitnami Kube Prometheus Helm Chart。
与 Prometheus Operator 集成
设置 metrics.serviceMonitor.enabled=true 可部署 ServiceMonitor 对象。需确保集群已安装 Prometheus Operator CRD,否则会报错:
no matches for kind "ServiceMonitor" in version "monitoring.coreos.com/v1"
5.3.4 更改 Elasticsearch 版本
通过 image.tag 参数指定 有效镜像标签 以修改 Elasticsearch 版本,例如 image.tag=X.Y.Z。此方法同样适用于 exporters 等其他镜像。
5.3.5 更新凭证
Bitnami Charts 在首次启动时配置凭证,后续凭证变更需手动操作:
- 按照 官方文档 更新用户密码
- 使用新密码更新 Secret(替换
SECRET_NAME和PASSWORD占位符):
kubectl create secret generic SECRET_NAME --from-literal=elasticsearch-password=PASSWORD --dry-run -o yaml | kubectl apply -f -
5.3.6 默认内核设置
Elasticsearch 要求主机内核调整以下参数,否则容器将启动失败:
- 文件描述符限制:File Descriptor requirements
- 虚拟内存限制:Virtual memory requirements
本 Chart 通过特权 initContainer 自动配置内核参数:
sysctl -w vm.max_map_count=262144 && sysctl -w fs.file-max=65536
可通过 sysctlImage.enabled=false 禁用此 initContainer。
5.3.7 启用内置 Kibana
通过设置 global.kibanaEnabled=true 启用 Kibana 子 Chart。安装时添加 --render-subchart-notes 参数可查看 Kibana 操作说明。
TLS 加密配置注意事项
当启用 Elasticsearch REST 加密时,需同步配置 Kibana:
security: enabled: true elasticPassword: "<PASSWORD>" # 需与 Elasticsearch 密码一致 tls: autoGenerated: true # 自动生成 TLS 证书 kibana: elasticsearch: security: auth: enabled: true kibanaUsername: "<USERNAME>" # 默认用户为 elastic kibanaPassword: "<PASSWORD>" # 与 Elasticsearch 密码一致 tls: enabled: true # 必须与 Elasticsearch REST 加密状态一致 existingSecret: RELEASENAME-elasticsearch-coordinating-crt # 证书 Secret 名称 usePemCerts: true # 自动生成的证书为 PEM 格式
核心一致项:启用 Elasticsearch REST 加密后,需确保以下值一致:
security: tls: restEncryption: true kibana: elasticsearch: security: tls: enabled: true
5.3.8 部署单节点集群
通过以下配置部署单节点集群(单 master 节点承担所有角色):
master: masterOnly: false replicaCount: 1 data: replicaCount: 0 coordinating: replicaCount: 0 ingest: replicaCount: 0
单节点集群将启用 单节点发现模式。
扩缩容注意事项:如需扩展至多节点,需先刷新现有 StatefulSet 配置(例如先缩容至 0 副本避免配置不一致):
kubectl scale statefulset <DEPLOYMENT_NAME>-master --replicas=0 helm upgrade <DEPLOYMENT_NAME> oci://REGISTRY_NAME/REPOSITORY_NAME/elasticsearch --reset-values --set master.masterOnly=false
5.3.9 添加额外环境变量
通过 extraEnvVars 直接添加环境变量:
extraEnvVars: - name: ELASTICSEARCH_VERSION value: 7.0
或通过 ConfigMap/Secret 挂载:
extraEnvVarsCM: 引用包含环境变量的 ConfigMap 名称extraEnvVarsSecret: 引用包含环境变量的 Secret 名称
5.3.10 使用自定义 Init 脚本
通过以下参数挂载自定义初始化脚本(路径:/docker-entrypoint.init-db):
initScripts: 直接在 values.yaml 中定义脚本内容initScriptsCM: 引用包含脚本的 ConfigMap 名称initScriptsSecret: 引用包含敏感脚本的 Secret 名称
示例:
initScriptsCM: special-scripts initScriptsSecret: special-scripts-sensitive
5.3.11 快照与恢复操作
需先注册快照仓库(参考 官方文档)。通过以下配置使用共享文件系统存储快照:
extraVolumes: - name: snapshot-repository nfs: server: nfs.example.com # 替换为 NFS 服务器地址 path: /share1 # 替换为共享路径 extraVolumeMounts: - name: snapshot-repository mountPath: /snapshots snapshotRepoPath: "/snapshots" # 快照仓库路径
5.3.12 Sidecars 与 Init 容器
通过 XXX.sidecars 参数(XXX 为节点角色,如 master.sidecars)添加 Sidecar 容器:
sidecars: - name: your-image-name image: your-image imagePullPolicy: Always ports: - name: portname containerPort: 1234
通过 initContainers 参数添加 Init 容器:
initContainers: - name: your-image-name image: your-image imagePullPolicy: Always
5.3.13 Pod 亲和性配置
通过 XXX.affinity 参数自定义亲和性规则,或使用 XXX.podAffinityPreset、XXX.podAntiAffinityPreset、XXX.nodeAffinityPreset 应用预设配置(参考 bitnami/common Chart)。
5.3.14 备份与恢复
使用 Velero 备份和恢复 Helm Chart 部署,需备份源部署的持久卷并挂载至新部署。详情参见 Velero 使用指南。
6. 持久性存储
Elasticsearch 数据存储路径为容器内 /bitnami/elasticsearch/data。默认通过动态卷供应创建 Persistent Volume Claim (PVC)。
权限调整
由于镜像默认以非 root 用户运行,需确保持久卷挂载路径权限正确。可通过以下方式配置:
- Security Context:使用 Kubernetes Security Context 自动调整所有权(部分 Kubernetes 发行版不支持)
- Volume Permissions Init Container:设置
volumePermissions.enabled=true启用 initContainer 调整权限
7. 配置参数
7.1 全局参数
| 参数名 | 描述 | 默认值 |
|---|---|---|
global.imageRegistry | 全局 Docker 镜像仓库 | "" |
global.imagePullSecrets | 全局 Docker 仓库密钥数组 | [] |
global.defaultStorageClass | 持久卷全局默认 StorageClass | "" |
global.storageClass | 已弃用,使用 global.defaultStorageClass 替代 | "" |
global.elasticsearch.service.name | Kibana 子 Chart 引用的 Elasticsearch 服务名(当 kibanaEnabled=false 或设置 global.elasticsearch.service.fullname 时忽略) | elasticsearch |
global.elasticsearch.service.fullname | Kibana 子 Chart 引用的 Elasticsearch 完整服务名(当 kibanaEnabled=false 时忽略) | "" |
global.elasticsearch.service.ports.restAPI | Kibana 子 Chart 使用的 Elasticsearch REST API 端口(当 kibanaEnabled=false 时忽略) | 9200 |
global.kibanaEnabled | 是否启用 Kibana | false |
global.security.allowInsecureImages | 是否允许跳过镜像验证 | false |
global.compatibility.openshift.adaptSecurityContext | 调整安全上下文以适配 OpenShift restricted-v2 SCC(移除 runAsUser、runAsGroup、fsGroup),可选值:auto(自动检测 OpenShift 时应用)、force(强制应用)、disabled(禁用) | auto |
7.2 通用参数
| 参数名 | 描述 | 默认值 |
|---|---|---|
kubeVersion | 覆盖 Kubernetes 版本 | "" |
nameOverride | 部分覆盖资源全名 | "" |
fullnameOverride | 完全覆盖资源全名 | "" |
commonLabels | 添加到所有部署对象的标签 | {} |
commonAnnotations | 添加到所有部署对象的注解 | {} |
clusterDomain | Kubernetes 集群域名 | cluster.local |
extraDeploy | 额外部署的 Kubernetes 对象数组 | [] |
namespaceOverride | 覆盖命名空间 | "" |
usePasswordFiles | 以文件形式挂载凭证(而非环境变量) | true |
diagnosticMode.enabled | 启用诊断模式(禁用所有探针并覆盖命令) | false |
diagnosticMode.command | 诊断模式下覆盖所有容器的命令 | ["sleep"] |
diagnosticMode.args | 诊断模式下覆盖所有容器的参数 | ["infinity"] |
7.3 Elasticsearch 集群参数
| 参数名 | 描述 | 默认值 |
|---|---|---|
clusterName | Elasticsearch 集群名称 | elastic |
containerPorts.restAPI | Elasticsearch REST API 端口 | 9200 |
containerPorts.transport | Elasticsearch 传输端口 | 9300 |
plugins | 要安装的插件列表(逗号分隔) | "" |


常见问题
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
轩辕镜像下载加速使用手册
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
登录方式进行 Docker 镜像下载加速教程
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
Linux Docker 镜像下载加速教程
在 Linux 系统上配置轩辕镜像源,支持主流发行版
Windows/Mac Docker 镜像下载加速教程
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
Docker Compose 镜像下载加速教程
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
K8s containerd 镜像下载加速教程
在 k8s 中配置 containerd 使用轩辕镜像加速
宝塔面板 Docker 镜像下载加速教程
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
群晖 NAS Docker 镜像下载加速教程
在 Synology 群晖NAS系统中配置轩辕镜像加速
飞牛fnOS Docker 镜像下载加速教程
在飞牛fnOS系统中配置轩辕镜像加速
极空间 NAS Docker 镜像下载加速教程
在极空间NAS中配置轩辕镜像加速
爱快路由 ikuai Docker 镜像下载加速教程
在爱快ikuai系统中配置轩辕镜像加速
绿联 NAS Docker 镜像下载加速教程
在绿联NAS系统中配置轩辕镜像加速
威联通 NAS Docker 镜像下载加速教程
在威联通NAS系统中配置轩辕镜像加速
Podman Docker 镜像下载加速教程
在 Podman 中配置轩辕镜像加速,支持多系统
ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
专属域名方式进行 Docker 镜像下载加速教程
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429