准备 Bintray 关闭:如何迁移
Bintray 是我们团队目前用来分发软件包的服务之一,将于 2021 年 5 月 1 日关闭。
这篇文章将解释当前可用于 RabbitMQ 社区的替代服务,或者在关闭日期之前可用的服务。
未来将不会再发布新版本到 Bintray。那些在 5 月 1 日之前没有从 Bintray 切换的人将会看到他们的 **部署开始失败**。我们强烈建议将从 Bintray 迁移视为一项重要且紧急的任务。
大脚印
多年来,Bintray 一直为我们的社区提供良好的服务。JFrog 团队非常慷慨地提供了我们定制的开源项目限制,并且总体上乐于帮助我们处理请求。
RabbitMQ 分发多种类型的软件包,包括针对多个发行版的现代 Erlang 软件包,Bintray 可以满足所有这些需求。
一些软件包托管服务专门化,无法单独替代 Bintray。这意味着迁移选项将根据您使用的软件包类型而有所不同。
在下一节中,我们将介绍今天可用的选项,并提及另一个即将到来的选项。
Bintray 时代后的选项
您应该迁移到哪个服务取决于您如何配置 RabbitMQ。
RabbitMQ 团队已经将发布工件发布到几个地方
- GitHub RabbitMQ 的版本:分发所有软件包类型,以及 Debian 软件包源文件
- PackageCloud:此存储库提供 Debian 和 RPM 软件包
除了上述选项外,我们的团队计划采用 Cloudsmith.io。Cloudsmith 支持多种软件包类型,我们对它的初步体验非常有希望。也正在考虑通过 Launchpad 发布 RabbitMQ Debian 软件包。
此外,我们的团队还通过以下方式生产和分发现代 Erlang 版本的软件包
- Launchpad PPA 用于 Ubuntu 和 Debian
- GitHub 零依赖 Erlang RPM 的版本
Docker 社区镜像和 Kubernetes 运算符
如果这是通过 Docker 社区镜像,那么对于您来说 **没有任何变化**,因为该镜像不依赖于 Bintray,也不通过 Bintray 分发。
对于 RabbitMQ Kubernetes 运算符 用户来说也是如此。
二进制构建
RabbitMQ 二进制构建(又称通用 UNIX 构建)最适合从 GitHub 版本 中获取。
如果您目前从 Bintray 获取这些软件包,则只需将下载位置更新为使用 GitHub 版本。
Windows 软件包
使用 Chocolatey 的 Windows 用户不受此转换的影响。
RabbitMQ 安装程序 和 Windows 二进制构建 用户现在应该从 GitHub 版本 中获取。
现代 Erlang 的 Debian 软件包
RabbitMQ 团队的 现代 Erlang 的 Debian 软件包 已经找到了一个新家,在一个 Launchpad PPA 中。
虽然 Launchpad 是一个面向 Ubuntu 的服务,但它也可以被 用作 Debian 用户的常规 apt 存储库。
这些软件包也 从 Cloudsmith.io 提供。
为了迁移,请删除 `/etc/apt/sources.list.d
` 下现有的 .list
文件,并安装一个新的文件,如 Debian 安装文档指南 中所述。
接下来,导入 Launchpad 存储库使用的签名密钥。
最后,运行
sudo apt update -y
并重新安装软件包。
RabbitMQ 的 Debian 软件包
RabbitMQ Debian 软件包可用的选项如下
- 使用 PackageCloud 上的 apt 存储库,包括 快速入门示例
- 使用 直接从 GitHub 下载 并安装其 依赖项,使用
dpkg
安装本地软件包
我们的团队计划在不久的将来也通过 Cloudsmith.io 分发此软件包。
为了迁移,请删除 `/etc/apt/sources.list.d
` 下现有的 .list
文件,并安装一个新的文件,如 Debian 安装文档指南 中所述。
接下来,导入 PackageCloud 存储库使用的签名密钥。
最后,运行
sudo apt update -y
并重新安装软件包。
现代 Erlang 的 RPM 软件包
RabbitMQ 团队自己的 零依赖 Erlang RPM 可以通过几种方式获取
- 使用 PackageCloud 上的 Yum 存储库
- 使用 GitHub 版本 中的直接下载,并使用
rpm install
安装本地软件包
我们的团队计划在不久的将来也通过 Cloudsmith.io 分发此软件包。
为了迁移,请删除
下现有的 /etc/yum.repos.d/
.repo
文件,并安装一个新的文件,如 RPM 安装文档指南 中所述。
然后运行
sudo yum clean all
sudo yum update -y
并重新安装软件包。
RabbitMQ 的 RPM 软件包
RabbitMQ RPM 软件包的选项与上面列出的我们的零依赖 Erlang RPM 的选项匹配
- 使用 PackageCloud 上的 Yum 存储库。这将涵盖 RHEL、CentOS、现代 Fedora 和 openSUSE
- 使用 直接从 GitHub 下载 并安装其 依赖项,使用
rpm install
安装本地软件包
我们的团队计划在不久的将来也通过 Cloudsmith.io 分发此软件包。
为了迁移,请删除
下现有的 /etc/yum.repos.d/
.repo
文件,并安装一个新的文件,如 RPM 安装文档指南 中所述。
然后运行
sudo yum clean all
sudo yum update -y
并重新安装软件包。
反馈
如果您有任何问题或反馈,请在 RabbitMQ 社区 Slack 的 #usage-questions
和 #core-and-plugin-dev
频道中分享。