本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
本镜像专为配合 MariaDB Operator 使用而设计,提供在 Kubernetes 环境中部署和管理 MariaDB 数据库的容器化支持。作为 MariaDB Operator 的核心组件之一,该镜像实现了与 Operator 的无缝集成,支持自动化数据库生命周期管理、配置同步及高可用部署,适用于云原生环境下的 MariaDB 集群构建与运维。
kubectl apply 提交配置,Operator 将自动调用本镜像创建数据库实例。kubectl get pods 检查 Pod 状态,通过 kubectl logs 查看日志确认启动正常。| 环境变量名 | 说明 | 默认值 | 是否必填 |
|---|---|---|---|
MARIADB_ROOT_PASSWORD | MariaDB root 用户密码,需通过 Kubernetes Secret 注入 | 无 | 是 |
MARIADB_DATABASE | 初始化时创建的默认数据库名称 | 无 | 否 |
MARIADB_USER | 初始化时创建的普通用户名(非 root) | 无 | 否 |
MARIADB_PASSWORD | 普通用户对应的密码,需通过 Kubernetes Secret 注入 | 无 | 否 |
MARIADB_CHARSET | 数据库默认字符集 | utf8mb4 | 否 |
MARIADB_COLLATION | 数据库默认排序规则 | utf8mb4_general_ci | 否 |
MARIADB_MAX_CONNECTIONS | 最大连接数限制 | 151 | 否 |
| 挂载路径 | 说明 | 推荐配置方式 |
|---|---|---|
/var/lib/mysql | 数据库数据持久化目录 | 使用 PersistentVolumeClaim |
/etc/mysql/conf.d | 自定义配置文件目录(覆盖默认配置) | 通过 ConfigMap 挂载 |
# mariadb-instance.yaml apiVersion: mariadb.mmontes.io/v1alpha1 kind: MariaDB metadata: name: mariadb-example namespace: default spec: replicas: 1 # 单节点;多节点需配置 replication image: <镜像名称>:<版本> # 替换为实际镜像名和版本 imagePullPolicy: IfNotPresent rootPasswordSecretKeyRef: name: mariadb-secrets key: root-password # 从 Secret 中读取 root 密码 database: myappdb # 初始化数据库名称 username: myappuser # 初始化普通用户名 passwordSecretKeyRef: name: mariadb-secrets key: user-password # 从 Secret 中读取普通用户密码 storage: size: 10Gi # 数据存储大小 storageClass: standard # 替换为集群内可用的 StorageClass resources: requests: cpu: 200m memory: 256Mi limits: cpu: 1000m memory: 1Gi livenessProbe: initialDelaySeconds: 30 periodSeconds: 10 readinessProbe: initialDelaySeconds: 5 periodSeconds: 5
创建 Secret(用于存储密码):
# mariadb-secrets.yaml apiVersion: v1 kind: Secret metadata: name: mariadb-secrets namespace: default type: Opaque data: root-password: <base64编码的root密码> # 例如:echo -n "mypassword" | base64 user-password: <base64编码的用户密码>
应用配置:
kubectl apply -f mariadb-secrets.yaml kubectl apply -f mariadb-instance.yaml
适用于本地验证镜像功能(非生产环境):
# docker-compose.yml version: '3.8' services: mariadb: image: <镜像名称>:<版本> # 替换为实际镜像名和版本 environment: - MARIADB_ROOT_PASSWORD=rootpass123 - MARIADB_DATABASE=testdb - MARIADB_USER=testuser - MARIADB_PASSWORD=userpass123 ports: - "3306:3306" volumes: - ./mariadb-data:/var/lib/mysql # 本地目录持久化数据 healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u root", "-p$$MARIADB_ROOT_PASSWORD"] interval: 10s timeout: 5s retries: 5
启动容器:
docker-compose up -d
docker run -d \ --name mariadb-test \ -p 3306:3306 \ -e MARIADB_ROOT_PASSWORD=rootpass123 \ -e MARIADB_DATABASE=testdb \ -e MARIADB_USER=testuser \ -e MARIADB_PASSWORD=userpass123 \ -v ./mariadb-data:/var/lib/mysql \ <镜像名称>:<版本> # 替换为实际镜像名和版本
resources 中的 CPU/内存限制,避免资源不足导致数据库性能下降或 Pod 被驱逐。kubectl logs <pod-name> 查看具体错误日志。kubectl describe pvc <pvc-name> 排查存储问题。如需进一步支持,可参考 MariaDB Operator 官方文档 或提交 Issue 至镜像维护仓库。

免费版仅支持 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 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429