如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
MariaDB Galera 是一个多主数据库集群解决方案,提供同步复制和高可用性。Bitnami MariaDB Galera 镜像是由 Bitnami 打包的容器化版本,旨在简化 MariaDB Galera 集群的部署和管理,适用于开发、测试及生产环境(注:生产环境建议使用 Bitnami Secure Images)。
MariaDB Galera 概述
商标说明:本软件列表由 Bitnami 打包,所提及的商标分属各自公司所有,使用这些商标并不意味着任何关联或背书。
consoledocker run --name mariadb-galera \ -e ALLOW_EMPTY_PASSWORD=yes \ bitnami/mariadb-galera:latest
警告:以上快速启动仅适用于开发环境。生产环境中应修改默认凭证,并参考 配置 部分进行安全部署。
自 2025 年 8 月 28 日起,Bitnami 将升级其公共镜像目录,通过新的 Bitnami Secure Images 计划 提供精选的安全加固镜像:
这些变更旨在通过推广软件供应链完整性最佳实践和最新部署,提升所有 Bitnami 用户的安全态势。更多详情参见 https://github.com/bitnami/containers/issues/83267%E3%80%82
使用 Helm Chart 是在 Kubernetes 上部署 Bitnami 应用的最简单方式。详见 https://github.com/bitnami/charts/tree/master/bitnami/mariadb-galera%E3%80%82
非 root 容器镜像增加了额外安全层,通常推荐用于生产环境。但由于以非 root 用户运行,特权操作通常受限。更多信息参见 Bitnami 非 root 容器文档。
注意:Debian 9 和 Oracle Linux 7 基础镜像已弃用,Bitnami 不再发布基于这些系统的新 Docker 镜像。
Bitnami 标签策略及滚动标签与固定标签的区别详见 文档。各标签对应关系可查看分支文件夹中的 tags-info.yaml 文件(如 bitnami/ASSET/BRANCH/DISTRO/tags-info.yaml)。
可通过关注 https://github.com/bitnami/containers 获取项目更新。
推荐从 https://hub.docker.com/r/bitnami/mariadb-galera 拉取预构建镜像:
consoledocker pull bitnami/mariadb-galera:latest
如需指定版本,可拉取带版本标签的镜像。https://hub.docker.com/r/bitnami/mariadb-galera/tags/ 参见 Docker Hub。
consoledocker pull bitnami/mariadb-galera:[TAG]
也可手动构建镜像:
consolegit clone https://github.com/bitnami/containers.git cd bitnami/APP/VERSION/OPERATING-SYSTEM # 替换 APP、VERSION、OPERATING-SYSTEM 为实际值 docker build -t bitnami/APP:latest .
若删除容器,所有数据将丢失。为避免数据丢失,需挂载持久化卷至 /bitnami/mariadb 路径。挂载空目录时,首次运行会自动初始化数据。
consoledocker run \ -e ALLOW_EMPTY_PASSWORD=yes \ -v /path/to/mariadb-persistence:/bitnami/mariadb \ bitnami/mariadb-galera:latest
修改仓库中的 https://github.com/bitnami/containers/blob/main/bitnami/mariadb-galera/docker-compose.yml%EF%BC%9A
yamlservices: mariadb: ... volumes: - /path/to/mariadb-persistence:/bitnami/mariadb ...
通过 Docker 容器网络,容器内的 MariaDB 服务可被其他应用容器访问,同一网络中的容器可通过容器名作为主机名通信。
步骤 1:创建网络
consoledocker network create app-tier --driver bridge
步骤 2:启动 MariaDB Galera 服务
consoledocker run -d --name mariadb-galera \ -e ALLOW_EMPTY_PASSWORD=yes \ --network app-tier \ bitnami/mariadb-galera:latest
步骤 3:启动客户端容器
consoledocker run -it --rm \ --network app-tier \ bitnami/mariadb-galera:latest mysql -h mariadb-galera -u root
以下示例定义 app-tier 桥接网络,假设应用服务名为 myapp:
yamlversion: '2' networks: app-tier: driver: bridge services: mariadb-galera: image: bitnami/mariadb-galera:latest environment: - ALLOW_EMPTY_PASSWORD=yes networks: - app-tier myapp: image: YOUR_APPLICATION_IMAGE # 替换为实际应用镜像 networks: - app-tier
重要:
- 需将
YOUR_APPLICATION_IMAGE替换为实际应用镜像- 应用容器中使用主机名
mariadb-galera连接数据库
启动容器:
consoledocker-compose up -d
可自定义环境变量
| 变量名 | 描述 | 默认值 |
|---|---|---|
ALLOW_EMPTY_PASSWORD | 允许空密码访问 MariaDB Galera | no |
MARIADB_AUTHENTICATION_PLUGIN | 首次初始化时配置的认证插件 | nil |
MARIADB_ROOT_USER | 数据库 root 用户 | root |
MARIADB_ROOT_PASSWORD | root 用户密码 | nil |
MARIADB_USER | 首次初始化时创建的数据库用户 | nil |
MARIADB_PASSWORD | 自定义数据库用户密码 | nil |
MARIADB_DATABASE | 首次初始化时创建的数据库 | nil |
MARIADB_MASTER_HOST | 主节点地址 | nil |
MARIADB_MASTER_PORT_NUMBER | 主节点端口 | 3306 |
MARIADB_MASTER_ROOT_USER | 主节点 root 用户 | root |
MARIADB_MASTER_ROOT_PASSWORD | 主节点 root 用户密码 | nil |
MARIADB_MASTER_DELAY | 复制延迟(秒) | 0 |
MARIADB_REPLICATION_USER | 复制用户 | monitor |
MARIADB_REPLICATION_PASSWORD | 复制用户密码 | monitor |
MARIADB_PORT_NUMBER | 数据库服务端口 | nil |
MARIADB_REPLICATION_MODE | 复制模式 | nil |
MARIADB_REPLICATION_SLAVE_DUMP | 是否从主节点 dump 数据并更新从节点 | false |
MARIADB_EXTRA_FLAGS | 启动数据库时附加的参数 | nil |
MARIADB_INIT_SLEEP_TIME | 初始化配置操作等待睡眠时间(秒) | nil |
MARIADB_CHARACTER_SET | 字符集 | nil |
MARIADB_COLLATE | 排序规则 | nil |
MARIADB_BIND_ADDRESS | 绑定地址 | nil |
MARIADB_SQL_MODE | 启用的 SQL 模式 | nil |
MARIADB_UPGRADE | 升级选项 | AUTO |
MARIADB_SKIP_TEST_DB | 是否跳过创建 test 数据库 | no |
MARIADB_CLIENT_ENABLE_SSL | 是否强制客户端 SSL 连接 | no |
MARIADB_CLIENT_SSL_CA_FILE | 客户端 SSL CA 证书路径 | nil |
MARIADB_CLIENT_SSL_CERT_FILE | 客户端 SSL 证书路径 | nil |
MARIADB_CLIENT_SSL_KEY_FILE | 客户端 SSL 密钥路径 | nil |
MARIADB_CLIENT_EXTRA_FLAGS | mysql 客户端附加参数(用于依赖 CLI 的应用) | no |
MARIADB_STARTUP_WAIT_RETRIES | 数据库启动等待重试次数 | 300 |
MARIADB_STARTUP_WAIT_SLEEP_TIME | 重试间隔(秒) | 2 |
MARIADB_ENABLE_SLOW_QUERY | 是否启用慢查询日志 | 0 |
MARIADB_LONG_QUERY_TIME | 慢查询阈值(秒) | 10.0 |
MARIADB_GALERA_DEFAULT_NODE_NAME | 节点默认逻辑名称 | nil |
MARIADB_GALERA_DEFAULT_NODE_ADDRESS | 节点默认报告地址 | nil |
MARIADB_GALERA_DEFAULT_MARIABACKUP_PASSWORD | mariabackup 工具默认密码(用于 SST) | nil |
MARIADB_GALERA_CONF_DIR | 配置目录 | /opt/bitnami/mariadb/conf |
MARIADB_GALERA_MOUNTED_CONF_DIR | 自定义配置覆盖目录 | /bitnami/conf |
MARIADB_GALERA_FORCE_SAFETOBOOTSTRAP | 是否强制引导(即使节点标记为不安全) | nil |
MARIADB_GALERA_CLUSTER_BOOTSTRAP | 是否作为集群引导节点 | nil |
MARIADB_GALERA_CLUSTER_ADDRESS | 集群地址 | nil |
MARIADB_GALERA_CLUSTER_NAME | 集群名称 | $DB_GALERA_DEFAULT_CLUSTER_NAME |
MARIADB_GALERA_NODE_NAME | 节点逻辑名称(默认主机名) | nil |
MARIADB_GALERA_NODE_ADDRESS | 节点报告地址(默认 IP) | nil |
MARIADB_GALERA_SST_METHOD | 状态快照传输(SST)方法 | $DB_GALERA_DEFAULT_SST_METHOD |
MARIADB_GALERA_MARIABACKUP_USER | mariabackup 工具用户(用于 SST) | $DB_GALERA_DEFAULT_MARIABACKUP_USER |
MARIADB_GALERA_MARIABACKUP_PASSWORD | mariabackup 工具密码(用于 SST) | $DB_GALERA_DEFAULT_MARIABACKUP_PASSWORD |
MARIADB_ENABLE_LDAP | 是否启用 LDAP 认证 | no |
MARIADB_ENABLE_TLS | 是否启用 SSL/TLS | no |
MARIADB_TLS_CERT_FILE | SSL/TLS 证书路径 | nil |
MARIADB_TLS_KEY_FILE | SSL/TLS 密钥路径 | nil |
MARIADB_TLS_CA_FILE | SSL/TLS CA 证书路径 | nil |
只读环境变量
| 变量名 | 描述 | 值 |
|---|---|---|
DB_FLAVOR | 数据库类型(有效值:mariadb 或 mysql) | mariadb |
DB_BASE_DIR | 基础目录 | ${BITNAMI_ROOT_DIR}/mariadb |
DB_VOLUME_DIR | 持久化文件目录 | ${BITNAMI_VOLUME_DIR}/mariadb |
DB_DATA_DIR | 数据文件目录 | ${DB_VOLUME_DIR}/data |
DB_BIN_DIR | 可执行文件目录 | ${DB_BASE_DIR}/bin |
DB_SBIN_DIR | 服务二进制文件目录 | ${DB_BASE_DIR}/sbin |
DB_CONF_DIR | 配置目录 | ${DB_BASE_DIR}/conf |
DB_DEFAULT_CONF_DIR | 默认配置目录 | ${DB_BASE_DIR}/conf.default |
DB_LOGS_DIR | 日志目录 | ${DB_BASE_DIR}/logs |
DB_TMP_DIR | 临时文件目录 | ${DB_BASE_DIR}/tmp |
DB_CONF_FILE | 主 |
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


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