清理镜像中生命周期结束的版本

OSU Open Source Labs 多年来一直支持 MariaDB,托管着我们分发版本的镜像,对此我们深表感谢。我们被问到是否可以减小尺寸,因为我们的镜像使用量已增长到 1TB,与其他项目相比相当高。

为了满足这个请求,我们从镜像中移除了所有生命周期结束的版本,包括 5.5、10.0 和 10.1,这将使用空间减半。

MariaDB 在 OSU Open Source Lab 镜像上的空间使用情况

结果发现,有一些持续集成系统仍在使用这些仓库。对于没有提前告知您,请接受我们的歉意。

恢复正常

我们已将 5.5、10.0 和 10.1 的最新版本重新添加回镜像。这将使我们的社区能够继续支持这些生命周期结束的版本。

要使用这个最新版本,在 /etc/apt/sources.list.d/mariadb.list 中的仓库配置如下

deb https://ftp.osuosl.org/pub/mariadb/repo/$MARIADB_MAJOR_VERSION/$DISTRO $DISTRO_VERSION main
  • MARIADB_MAJOR_VERSION 为 “5.5”、“10.0” 或 “10.1”;
  • DISTRO 是 apt 发行版,为 “ubuntu” 或 “debian”;并且
  • DISTRO_VERSION 是发行版的一个版本,例如 “xenial” 或 “stretch”。
  • 该 URL 可以是之前使用的任何镜像,而不仅仅是 ftp.osuosl.org

这将使您能够访问这些生命周期结束版本的最新版本。这尤其影响那些使用生命周期结束的容器基础镜像(例如 docker.io/library/mariadb:10.0)作为基础镜像,然后执行 apt-get update -y

更旧的版本仍然可以在 https://archive.mariadb.org 上找到,并且可以按照我们的 知识库文章 配置为 APT 仓库。

针对旧版本的容器变通方法

对于那些基于不再位于 OSU Open Source Labs 镜像上的旧 MariaDB 版本构建容器的用户,可以通过移除 sources 文件来防止 apt-get update -y 失败

FROM docker.io/library/mariadb:5.5.40
RUN rm /etc/apt/sources.list.d/mariadb.list

或者如果您需要从镜像获取某些内容

FROM docker.io/library/mariadb:5.5.60
RUN echo "deb https://archive.mariadb.org/mariadb-${MARIADB_VERSION%+*}/repo/ubuntu/ ${MARIADB_VERSION#*~} main" > /etc/apt/sources.list.d/mariadb.list

对于版本早于 5.5.60、10.1.34、10.2.16 和 10.3.8 的版本,当基础为 Debian 时,在上面的 URL 中将 ubuntu 改为 debian

我们已经更改了 Docker Library 的 MariaDB 镜像,使其在当前和未来的版本中包含这个稳定的存档 URL。

对于受影响的任何人再次表示歉意,如果我们可以改进我们的版本或 Docker Library 的产品,请 联系我们,或者 提交错误报告/功能请求