官方 MariaDB 容器镜像在哪里?

问题简单,答案更简单。Docker Official Images 是 MariaDB Server 的官方镜像分发者。几年前,MariaDB Server 的 Docker Official Image 就已经获得了所有 MARIADB_* 形式的环境变量,而 MariaDB Corporation Docker Hub 上的其分支已经被弃用并最终移除。由于对 MariaDB Server 的 Docker Official Images 的贡献,日常维护工作已移交给 MariaDB GitHub 组织。在这里,MariaDB 基金会在 MariaDB Corporation(现为 MariaDB plc)在服务器和版本发布方面的支持下,继续开发和支持 Docker Official Image。

社区

通过作为一个社区,与 Docker Official Image 维护者合作,我们利用他们在容器最佳实践方面的丰富专业知识,并确保最终发布的镜像符合我们用户期望的最高标准和原则

通过在 MariaDB Server 端和 Docker Official Images 维护端共同努力,我们得以改进 MariaDB Server,使所有用户受益,并减少了 docker-entrypoint.sh 中一些相当难看的变通方案

当发生异常时,例如 IBM Power 上的 SIGILL 或 s390x 构建失败,是 Docker Official Image 维护者帮助诊断问题。

快速发布

偶尔有服务器开发者做出的更改破坏了容器用户的用例,例如 GH issue 417MDEV-23947(是的,我造成的),正因为如此,我们得以编写测试用例并解决该问题。在 Docker Inc. 的监督下,我们在第二天就发布了一个经过测试的变通方案。当上游问题得到解决后,该变通方案将在下一个版本中移除。

我们的用户获取最新镜像会延迟吗?不会。Docker Official Image 的发布是我们发布流程的一部分。Official Images 会有发行说明,而且由于时区和人工审核的原因,容器通常在服务器发布后的第二天内可用。因此,最新的镜像总是在那里,没有大惊小怪,质量经过检查,延迟最小。

在我们为用户进行这些快速发布时,Docker Official Images 的监督和额外审核确保了所有用户的容器发布质量。

为了提高对我们“额外审核”的依赖,我们在 CI 中添加了测试套件HadolintShellcheck。这些工具用于验证 Dockerfile 以及 entry-point 和 healthcheck 脚本的质量。

测试

由于我们有测试套件,MariaDB Server 的 CI 会构建并测试针对(即将发布的)下一版本 Docker Official Images。此外,通过我们自己的测试,最新的容器(以及下一个服务器版本)也会针对 WordPress 的单元测试进行测试。如果您想在测试中使用此镜像,您也有机会这样做,因为它们已发布quay.io/mariadb-foundation/mariadb-devel:latest(以及主版本标签 + verylatest + {earliest,latest}{,-lts} 标签)上,供任何人随时使用,许多人已经在 CI 中这样做了。

通过提供测试镜像(包含调试信息),用户能够在某天提交包含足够信息的问题报告后,在第二天就获得包含修复的容器构建。

关于 MariaDB 容器本身的问题报告和缺陷,未解决的问题非常少。过去几年里,通过容器和服务器修复的结合,大部分积压的问题都已解决。

我们定期与我们的 MariaDB Operator 社区合作,确保兼容性得到维护,并能够利用新功能。

功能

Docker Official Images 的监督并未阻碍我们在对用户重要的功能上进行重大创新,例如

通过社区贡献,我们增加了

即使在我们乐于遵循的质量和标准框架内,仍有改进空间。

生态系统是多样性

仅仅因为我们维护一个(单一的)官方 MariaDB 镜像,并不意味着这是唯一的方法。生态系统中其他重要的 MariaDB 打包者包括

这两个提供商都提供独特的方案,其标准和主题与其其他容器一致。

他们的用户也是我们的用户,如果他们遇到问题(例如 MDEV-27060),我们将帮助我们的用户和原始项目。

多架构 / 多标签

您可以从 MariaDB Server 的 Docker Official Images(来自官方最新版本)中获得什么?四种架构:x86_64, Aarch64, Power64 LE 和 S390x(不包含 10.4)。

Tags: 11.1.2-jammy, 11.1-jammy, 11-jammy, jammy, 11.1.2, 11.1, 11, latest
Architectures: amd64, arm64v8, ppc64le, s390x
GitCommit: 70d8c97f486055689e9f5a6a133f8bfb0806632a
Directory: 11.1

Tags: 11.0.3-jammy, 11.0-jammy, 11.0.3, 11.0
Architectures: amd64, arm64v8, ppc64le, s390x
GitCommit: 73a6fc045e12961287d2f41a6473bbf4e0eddeba
Directory: 11.0

Tags: 10.11.5-jammy, 10.11-jammy, 10-jammy, lts-jammy, 10.11.5, 10.11, 10, lts
Architectures: amd64, arm64v8, ppc64le, s390x
GitCommit: 73a6fc045e12961287d2f41a6473bbf4e0eddeba
Directory: 10.11

Tags: 10.10.6-jammy, 10.10-jammy, 10.10.6, 10.10
Architectures: amd64, arm64v8, ppc64le, s390x
GitCommit: 73a6fc045e12961287d2f41a6473bbf4e0eddeba
Directory: 10.10

Tags: 10.9.8-jammy, 10.9-jammy, 10.9.8, 10.9
Architectures: amd64, arm64v8, ppc64le, s390x
GitCommit: 73a6fc045e12961287d2f41a6473bbf4e0eddeba
Directory: 10.9

Tags: 10.6.15-focal, 10.6-focal, 10.6.15, 10.6
Architectures: amd64, arm64v8, ppc64le, s390x
GitCommit: 73a6fc045e12961287d2f41a6473bbf4e0eddeba
Directory: 10.6

Tags: 10.5.22-focal, 10.5-focal, 10.5.22, 10.5
Architectures: amd64, arm64v8, ppc64le, s390x
GitCommit: 73a6fc045e12961287d2f41a6473bbf4e0eddeba
Directory: 10.5

Tags: 10.4.31-focal, 10.4-focal, 10.4.31, 10.4
Architectures: amd64, arm64v8, ppc64le
GitCommit: 73a6fc045e12961287d2f41a6473bbf4e0eddeba
Directory: 10.4

多样性的价值

容器对我们的用户非常重要,并且凭借在 MariaDB Server 和容器方面的多样化技能,我们的用户将从中获得最佳体验。

作为 Docker Official Images 社区的一部分,帮助我们更快、更高质量地为所有用户提供更好的 MariaDB。

我们鼓励所有用户社区进一步参与功能请求,并在需要时提交问题报告。欢迎向代码/测试仓库和/或知识库(或您自己的博客)贡献代码/测试和文档。社区成员有时需要一些帮助,因此请在 StackOverflowDatabase Administrators StackExchange 上提供一点帮助,让他们感到受欢迎。