wordpress Docker 镜像下载 - 轩辕镜像
wordpress 镜像详细信息和使用指南
wordpress 镜像标签列表和版本信息
wordpress 镜像拉取命令和加速下载
wordpress 镜像使用说明和配置指南
Docker 镜像加速服务 - 轩辕镜像平台
国内开发者首选的 Docker 镜像加速平台
极速拉取 Docker 镜像服务
相关 Docker 镜像推荐
热门 Docker 镜像下载
wordpress 镜像详细信息
wordpress 镜像标签列表
wordpress 镜像使用说明
wordpress 镜像拉取命令
Docker 镜像加速服务
轩辕镜像平台优势
镜像下载指南
相关 Docker 镜像推荐
wordpress 镜像详细说明
wordpress 使用指南
wordpress 配置说明
wordpress 官方文档
Bitnami WordPress Helm Chart
镜像概述和主要用途
WordPress 是全球最流行的博客和内容管理平台。它功能强大且简单易用,从学生到跨国公司,都使用它来构建美观、实用的网站。
Bitnami WordPress Helm Chart 用于在 Kubernetes 集群上通过 Helm 包管理器引导 WordPress 部署。该 Chart 还集成了 Bitnami MariaDB Chart(满足 WordPress 的数据库需求)和 Bitnami Memcached Chart(用于缓存数据库查询)。
WordPress ***概述
核心功能和特性
- 完整依赖集成:默认包含 MariaDB 数据库和 Memcached 缓存服务,也支持连接外部数据库和缓存
- 生产级配置:支持资源请求/限制、Pod 亲和性/反亲和性、节点亲和性配置
- 安全增强:支持 TLS 加密、安全上下文适配(兼容 OpenShift)、禁止不安全镜像
- 可观测性:集成 Prometheus 指标(通过 apache-exporter),支持 ServiceMonitor 对接 Prometheus Operator
- 灵活的网络配置:支持 Ingress 资源,可配置主机名、路径和 TLS 证书
- 外部服务支持:可对接外部数据库(禁用内置 MariaDB)和外部缓存(禁用内置 Memcached)
- 持久化存储:使用 Persistent Volume Claims 持久化 WordPress 数据和配置
- 配置定制:支持自定义环境变量、Sidecar 容器、Init 容器和
.htaccess配置
使用场景和适用范围
- 开发环境:快速部署 WordPress 进行功能测试和插件开发,利用 "latest" 标签镜像
- 生产环境:建议使用 Bitnami Secure Images(提供硬化容器、CVE 透明度、SBOM 和企业支持)
- 规模化部署:通过 Kubernetes 实现 WordPress 多副本扩展,结合 Ingress 和负载均衡
- 混合架构:适用于需要对接外部托管数据库(如 AWS RDS、Azure Database)的场景
- 安全敏感场景:需满足软件供应链安全要求,需要最小***面和定期安全更新的部署
详细使用方法和配置说明
前置要求
- Kubernetes 集群版本 1.23+
- Helm 版本 3.8.0+
- 底层基础设施支持 PV 供应器
- 支持 ReadWriteMany 卷(用于部署扩展)
安装 Chart
快速安装(TL;DR)
consolehelm install my-release oci://registry-1.docker.io/bitnamicharts/wordpress
详细安装步骤
-
使用指定发布名称安装:
consolehelm install my-release oci://REGISTRY_NAME/REPOSITORY_NAME/wordpress需替换占位符:
REGISTRY_NAME(如registry-1.docker.io)和REPOSITORY_NAME(如bitnamicharts) -
查看所有发布:
consolehelm list
配置与管理
资源请求和限制
Bitnami Charts 允许为所有容器设置资源请求和限制,通过 resources 参数配置。生产环境必须设置资源请求,并根据实际需求调整。示例:
yamlresources: requests: cpu: 500m memory: 512Mi limits: cpu: 1000m memory: 1Gi
也可使用 resourcesPreset 预设(如 small、medium、large),但生产环境建议手动配置以适配具体需求。
凭证更新
Bitnami Charts 在首次启动时配置凭证,后续更新需手动操作:
- 参考 WordPress ***文档 更新用户密码
- 更新 Kubernetes Secret(替换
SECRET_NAME、PASSWORD和SMTP_PASSWORD):shellkubectl create secret generic SECRET_NAME \ --from-literal=wordpress-password=PASSWORD \ --from-literal=smtp-password=SMTP_PASSWORD \ --dry-run -o yaml | kubectl apply -f -
Prometheus 指标集成
- 启用指标:设置
metrics.enabled=true,将部署包含 apache-exporter 的 Sidecar 容器和metricsService - 对接 Prometheus Operator:设置
metrics.serviceMonitor.enabled=true,自动创建 ServiceMonitor 资源 - 前置条件:集群需已安装 Prometheus 或 Prometheus Operator(推荐使用 Bitnami Kube Prometheus Chart)
外部数据库支持
禁用内置 MariaDB 并连接外部数据库:
consolehelm install my-release oci://registry-1.docker.io/bitnamicharts/wordpress \ --set mariadb.enabled=false \ --set externalDatabase.host=myexternalhost \ --set externalDatabase.user=myuser \ --set externalDatabase.password=mypassword \ --set externalDatabase.database=mydatabase \ --set externalDatabase.port=3306
若数据库包含现有 WordPress 数据,需设置
wordpressSkipInstall=true跳过安装向导
Memcached 配置
启用内置 Memcached
consolehelm install my-release oci://registry-1.docker.io/bitnamicharts/wordpress \ --set wordpressConfigureCache=true \ --set memcached.enabled=true
对接外部 Memcached
consolehelm install my-release oci://registry-1.docker.io/bitnamicharts/wordpress \ --set wordpressConfigureCache=true \ --set memcached.enabled=false \ --set externalCache.host=myexternalcachehost \ --set externalCache.port=***
Ingress 配置
启用 Ingress 以通过域名访问 WordPress:
yamlingress: enabled: true hostname: wordpress.example.com tls: true annotations: kubernetes.io/ingress.class: nginx cert-manager.io/cluster-issuer: letsencrypt-prod # 若使用 cert-manager # 额外主机配置(可选) extraHosts: - name: blog.example.com path: /blog annotations: {}
需确保集群已安装 Ingress 控制器(如 nginx-ingress-controller)
TLS 安全配置
支持多种 TLS 证书管理方式:
-
手动创建 TLS Secret:
consolekubectl create secret tls wordpress-tls \ --cert=path/to/certificate.pem \ --key=path/to/private-key.pem(Secret 名称需为
<ingress.hostname>-tls,如wordpress.example.com-tls) -
通过 cert-manager 自动签发: 在 Ingress 注解中添加:
yamlannotations: cert-manager.io/cluster-issuer: "letsencrypt-prod" acme.cert-manager.io/http01-ingress-class: "nginx" -
Helm 管理证书:
yamlingress: tls: true secrets: - name: wordpress-tls certificate: | -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- key: | -----BEGIN RSA PRIVATE KEY----- ... -----END RSA PRIVATE KEY-----
.htaccess 文件管理
- 默认配置:容器内置
wordpress-htaccess.conf(位于/opt/bitnami/wordpress/),Apache 配置为AllowOverride None(禁用.htaccess) - 启用插件 .htaccess:部分插件依赖
.htaccess,需:yamlallowOverrideNone: false htaccessPersistenceEnabled: true # 持久化 .htaccess 编辑 - 自定义配置:创建包含自定义指令的 ConfigMap(如
custom-htaccess),并配置:yamlallowOverrideNone: true customHTAccessCM: custom-htaccess
备份与恢复
使用 Velero 备份和恢复 WordPress 部署:
- 备份持久卷(PV)和部署配置
- 恢复时将备份的 PV 挂载到新部署
详细步骤参考 Bitnami Velero 备份指南
持久化存储
WordPress 数据和配置存储在容器的 /bitnami 路径,通过 Persistent Volume Claim 持久化:
- 默认使用
storageClass: ""(依赖集群默认 StorageClass) - 自定义存储配置:
yaml
persistence: enabled: true storageClass: "fast-storage" size: 10Gi accessMode: ReadWriteOnce
额外环境变量
添加自定义环境变量:
yamlwordpress: extraEnvVars: - name: LOG_LEVEL value: "error" - name: WP_DEBUG value: "false"
或通过 ConfigMap/Secret 注入:
yamlwordpress: extraEnvVarsCM: custom-env-cm # 从 ConfigMap 注入 extraEnvVarsSecret: custom-env-secret # 从 Secret 注入
Sidecar 和 Init 容器
添加 Sidecar 容器(如日志收集器):
yamlsidecars: - name: log-exporter image: busybox:1.35 command: ["tail", "-f", "/var/log/wordpress/access.log"] volumeMounts: - name: logs mountPath: /var/log/wordpress
添加 Init 容器(如文件权限配置):
yamlinitContainers: - name: fix-permissions image: busybox:1.35 command: ["chmod", "-R", "755", "/bitnami/wordpress"] volumeMounts: - name: wordpress-data mountPath: /bitnami/wordpress
Pod 亲和性配置
自定义 Pod 亲和性规则:
yamlaffinity: podAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: app.kubernetes.io/name operator: In values: - mariadb topologyKey: "kubernetes.io/hostname"
或使用预设亲和性(来自 bitnami/common):
yamlpodAffinityPreset: soft # 软亲和性 podAntiAffinityPreset: hard # 硬反亲和性 nodeAffinityPreset: type: required key: workload values: ["wordpress"]
⚠️ 重要通知:Bitnami 镜像仓库即将变更
自 2025 年 8 月 28 日起,Bitnami 将升级其公共镜像仓库,推出Bitnami Secure Images计划,主要变更包括:
核心变更
- 安全镜像开放:首次向社区用户提供安全优化版容器镜像
- 非硬化镜像弃用:免费 tier 将逐步淘汰基于 Debian 的非硬化镜像,仅保留少量硬化镜像(仅
latest标签,用于开发) - 旧镜像迁移:所有现有容器镜像(含历史版本标签,如 2.50.0、10.6)将在两周内迁移至
docker.io/bitnamilegacy(不再更新) - 生产环境建议:生产工作负载需使用 Bitnami Secure Images(提供硬化容器、最小***面、CVE 透明度、SBOM 和企业支持)
影响与建议
- 开发环境:可继续使用
latest标签的硬化镜像 - 生产环境:迁移至 Bitnami Secure Images 以获取长期支持
- 历史版本依赖:需将镜像源从
docker.io/bitnami切换至docker.io/bitnamilegacy
更多详情见 Bitnami Secure Images 公告
参数说明
全局参数
| 参数名 | 描述 | 默认值 |
|---|---|---|
global.imageRegistry | 全局 Docker 镜像仓库 | "" |
global.imagePullSecrets | 全局镜像拉取密钥(数组) | [] |
global.defaultStorageClass | 持久卷默认 StorageClass | "" |
global.security.allowInsecureImages | 允许跳过镜像验证 | false |
global.compatibility.openshift.adaptSecurityContext | 适配 OpenShift restricted-v2 SCC 的安全上下文(移除 runAsUser 等),可选值:auto(自动检测)、force(强制适配)、disabled(禁用) | auto |
通用参数
| 参数名 | 描述 | 默认值 |
|---|---|---|
kubeVersion | 覆盖 Kubernetes 版本 | "" |
nameOverride | 部分覆盖资源名称模板(保留发布名称) | "" |
fullnameOverride | 完全覆盖资源名称模板 | "" |
commonLabels | 添加到所有资源的标签 | {} |
commonAnnotations | 添加到所有资源的注解 | {} |
clusterDomain | Kubernetes 集群域名 | cluster.local |
extraDeploy | 额外部署的 Kubernetes 对象(数组) | [] |
usePasswordFiles | 以文件而非环境变量挂载凭证 | true |
diagnosticMode.enabled | 启用诊断模式(禁用探针,覆盖命令) | false |
diagnosticMode.command | 诊断模式下的容器命令 | ["sleep"] |
diagnosticMode.args | 诊断模式下的命令参数 | ["infinity"] |
WordPress 镜像参数
| 参数名 | 描述 | 默认值 |
|---|---|---|
image.registry | WordPress 镜像仓库 | REGISTRY_NAME |
image.repository | WordPress 镜像仓库路径 | REPOSITORY_NAME/wordpress |
image.digest | 镜像摘要(格式:sha256:aa...),设置后将覆盖 tag | "" |
image.pullPolicy | 镜像拉取策略 | IfNotPresent |
image.tag | 镜像标签 | ""(默认使用 Chart 版本) |
已知限制
-
多副本维护模式问题:执行需要维护模式的管理操作(如插件更新)时,仅会在一个副本上激活维护模式,其他副本可能继续处理请求导致不可预测结果。
解决方法:通过 WP CLI 在所有副本上手动激活/停用维护模式(假设发布名为
wordpress,3 个副本):console# 激活维护模式 for i in 0 1 2; do kubectl exec $(kubectl get pods -l app.kubernetes.io/name=wordpress -o jsonpath="{.items[$i].metadata.name}") -c wordpress -- wp maintenance-mode activate done # 停用维护模式 for i in 0 1 2; do kubectl exec $(kubectl get pods -l app.kubernetes.io/name=wordpress -o jsonpath="{.items[$i].metadata.name}") -c wordpress -- wp maintenance-mode deactivate done
完整参数列表请参见 Bitnami WordPress Chart 文档

用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务
常见问题
免费版仅支持 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 登录认证访问私有仓库
Linux
在 Linux 系统配置镜像加速服务
Windows/Mac
在 Docker Desktop 配置镜像加速
Docker Compose
Docker Compose 项目配置加速
K8s Containerd
Kubernetes 集群配置 Containerd
宝塔面板
在宝塔面板一键配置镜像加速
群晖
Synology 群晖 NAS 配置加速
飞牛
飞牛 fnOS 系统配置镜像加速
极空间
极空间 NAS 系统配置加速服务
爱快路由
爱快 iKuai 路由系统配置加速
绿联
绿联 NAS 系统配置镜像加速
威联通
QNAP 威联通 NAS 配置加速
Podman
Podman 容器引擎配置加速
Singularity/Apptainer
HPC 科学计算容器配置加速
其他仓库配置
ghcr、Quay、nvcr 等镜像仓库
专属域名拉取
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429