如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
** 注意 **:这是 https://hub.docker.com/_/mariadb 的 ppc64le 架构构建的“按架构”仓库——更多信息,请参见官方镜像文档中的“https://github.com/docker-library/official-images#architectures-other-than-amd64%E2%80%9D%E4%BB%A5%E5%8F%8A%E5%AE%98%E6%96%B9%E9%95%9C%E5%83%8F%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98%E4%B8%AD%E7%9A%84%E2%80%9Chttps://github.com/docker-library/faq#an-images-source-changed-in-git-now-what%E2%80%9D%E3%80%82
-** 维护者 **:
MariaDB 基金会、MariaDB plc,以及 https://github.com/MariaDB/mariadb-docker 贡献者
-** 获取帮助 **:
数据库管理员(Stack Exchange)、MariaDB 知识库(在此提问)。
另请参阅 MariaDB 知识库上的“获取 MariaDB 帮助”文章。
Dockerfile 链接https://github.com/MariaDB/mariadb-docker/blob/dd7e1e1e35422011e9dbfa46f22c9e24f49e9fba/12.1-ubi/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/cdffb7d2fd712249f3f386497117825be6442afa/12.1/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/dd7e1e1e35422011e9dbfa46f22c9e24f49e9fba/12.0-ubi/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/6a5611cd9dd70a8dcb24195cc8dd2147dd6471e3/12.0/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/dd7e1e1e35422011e9dbfa46f22c9e24f49e9fba/11.8-ubi/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/cdffb7d2fd712249f3f386497117825be6442afa/11.8/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/dd7e1e1e35422011e9dbfa46f22c9e24f49e9fba/11.4-ubi/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/cdffb7d2fd712249f3f386497117825be6442afa/11.4/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/dd7e1e1e35422011e9dbfa46f22c9e24f49e9fba/10.11-ubi/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/cdffb7d2fd712249f3f386497117825be6442afa/10.11/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/dd7e1e1e35422011e9dbfa46f22c9e24f49e9fba/10.6-ubi/Dockerfile
https://github.com/MariaDB/mariadb-docker/blob/cdffb7d2fd712249f3f386497117825be6442afa/10.6/Dockerfile
-** 问题反馈 :
可在 [*] 的 “MDEV” 项目下的 “Docker” 组件提交问题,或在 https://github.com/MariaDB/mariadb-docker/issues 上提交。
-** 支持的架构 **:(https://github.com/docker-library/official-images#architectures-other-than-amd64)
https://hub.docker.com/r/amd64/mariadb/%E3%80%81https://hub.docker.com/r/arm64v8/mariadb/%E3%80%81https://hub.docker.com/r/ppc64le/mariadb/%E3%80%81https://hub.docker.com/r/s390x/mariadb/
-** 已发布镜像工件详情 **:
https://github.com/docker-library/repo-info/blob/master/repos/mariadb%EF%BC%88https://github.com/docker-library/repo-info/commits/master/repos/mariadb%EF%BC%89
(镜像元数据、传输大小等)
-** 镜像更新 **:
https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fmariadb
https://github.com/docker-library/official-images/blob/master/library/mariadb%EF%BC%88https://github.com/docker-library/official-images/commits/master/library/mariadb%EF%BC%89
-** 本描述的来源 **:
https://github.com/docker-library/docs/tree/master/mariadb%EF%BC%88https://github.com/docker-library/docs/commits/master/mariadb%EF%BC%89
MariaDB Server 是世界上最受欢迎的数据库服务器之一。它由 MySQL 的原始开发人员打造,并保证保持开源。著名用户包括***、星展银行和 ServiceNow。
其目标是保持与 MySQL 的高度兼容性,确保库二进制等效性以及与 MySQL API 和命令的精确匹配。MariaDB 开发人员持续开发新功能并提升性能,以更好地服务用户。
!https://raw.githubusercontent.com/docker-library/docs/554e4b9aaac2e266b9ab31e9a312cb6f96d69286/mariadb/logo.png
ppc64le/mariadb 有多个标签,其中值得注意的是 latest(最新稳定版本)和 lts(最新长期支持版本)。
端口绑定
默认情况下,容器内运行的数据库将监听 3306 端口。您可以通过 docker run 命令的 -p 3306:3306 参数将容器的 3306 端口映射到主机的 3306 端口,如下所示:
console$ docker run --name some-mariadb -p 3306:3306 ppc64le/mariadb:latest
使用此镜像所需的环境变量包括设置 root 用户密码:
console$ docker run --detach --name some-mariadb --env MARIADB_ROOT_PASSWORD=my-secret-pw ppc64le/mariadb:latest
或:
console$ docker run --detach --name some-mariadb --env MARIADB_ALLOW_EMPTY_ROOT_PASSWORD=1 ppc64le/mariadb:latest
或:
console$ docker run --detach --name some-mariadb --env MARIADB_RANDOM_ROOT_PASSWORD=1 ppc64le/mariadb:latest
... 此时容器日志将包含生成的 root 密码。
mariadb 的 compose.yaml 示例:
yaml# 使用 root/example 作为用户/密码凭据 services: db: image: mariadb restart: always environment: MARIADB_ROOT_PASSWORD: example adminer: image: adminer restart: always ports: - 8080:8080
运行 docker compose up,等待其完全初始化,然后访问 http://localhost:8080 或 http://host-ip:8080(视情况而定)。
ppc64le/mariadb 服务器实例启动带有用户、密码和数据库的 MariaDB 实例:
console$ docker run --detach --name some-mariadb --env MARIADB_USER=example-user --env MARIADB_PASSWORD=my_cool_secret --env MARIADB_DATABASE=exmple-database --env MARIADB_ROOT_PASSWORD=my-secret-pw ppc64le/mariadb:latest
ppc64le/mariadb 服务器实例由于应用程序需要与 MariaDB 通信,MariaDB 需与应用程序在同一网络中启动:
console$ docker network create some-network $ docker run --detach --network some-network --name some-mariadb --env MARIADB_USER=example-user --env MARIADB_PASSWORD=my_cool_secret --env MARIADB_ROOT_PASSWORD=my-secret-pw ppc64le/mariadb:latest $ docker run --detach --network some-network --name some-application --env APP_DB_HOST=some-mariadb --env APP_DB_USER=example-user --env APP_DB_PASSWD=my_cool_secret some-application
... 其中 some-network 是新创建的网络(非默认的 bridge 网络),some-mariadb 是您要分配给容器的名称,my-secret-pw 是要为 MariaDB root 用户设置的密码。请参见上面的标签列表,选择符合您需求和环境的相关标签。some-application 及其环境变量 APP_DB_HOST、APP_DB_USER 和 APP_DB_PASSWD 是应用程序的数据库连接配置。
以下命令启动另一个 ppc64le/mariadb 容器实例,并针对原始 ppc64le/mariadb 容器运行 mariadb 命令行客户端,允许您对数据库实例执行 SQL 语句:
console$ docker run -it --network some-network --rm ppc64le/mariadb mariadb -h some-mariadb -u example-user
... 其中 some-mariadb 是原始 ppc64le/mariadb 容器的名称(已连接到 some-network Docker 网络)。
此镜像也可用作非 Docker 实例或远程实例的客户端:
console$ docker run -it --rm ppc64le/mariadb mariadb --host <服务器容器IP> --user example-user --password --database test
这将为您提供标准的 MariaDB 提示符。您可以通过以下命令测试:
consoleMariaDB [(none)]> \s -------------- client/mariadb Ver 15.1 Distrib 10.6.16-MariaDB, for Linux (x86_64) using EditLine wrapper Connection id: 20 Current database: test Current user: example-user@bark SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server: MariaDB Server version: 10.6.16-MariaDB Source distribution Protocol version: 10 Connection: 192.168.178.73 via TCP/IP Server characterset: latin1 Db characterset: latin1 Client characterset: utf8mb3 Conn. characterset: utf8mb3 TCP port: 3306 Uptime: 6 min 4 sec Threads: 1 Questions: 32 Slow queries: 0 Opens: 20 Open tables: 13 Queries per second avg: 0.087 --------------
... 这将为您提供版本和连接信息。然后您可以使用 exit 离开 MariaDB 命令行客户端和客户端容器。
有关 MariaDB 命令行客户端的更多信息,请参见 MariaDB 知识库:MariaDB 命令行客户端。
docker exec 命令允许您在运行的容器内运行命令。以下命令将为您提供 ppc64le/mariadb 容器内的 bash shell:
console$ docker exec -it some-mariadb bash
由于 MariaDB-Backup 与服务器版本高度耦合,因此在明确版本的 mariadb 容器中使用 mariadb-backup 可能很有用:
console$ docker run --volume /backup-volume:/backup --rm mariadb:10.6.15 mariadb-backup --help
日志可通过 Docker 的容器日志查看:
console$ docker logs some-mariadb
自定义配置文件应以 .cnf 结尾,并以只读方式挂载到 /etc/mysql/conf.d 目录。这些文件应包含针对您的应用程序/环境所需的 MariaDB 工作负载的最小更改。MariaDB 配置文件将包含 [mariadb] 组,后跟 variable = value 设置,具体参见 设置服务器系统变量 或 option-prefix-variable。
ppc64le/mariadb 镜像配置包含 Ubuntu MariaDB 变量,并对容器进行了两项自定义更改:
host-cache-size=0skip-name-resolve这些更改禁用了
以下是 ppc64le/mariadb 相关的常用 Docker 镜像,适用于 关系型数据库、MySQL 兼容、高性能 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

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