Skip to content

Debian and Ubuntu guide: the end of the Cloudsmith era #2309

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 15, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion blog/2021-03-31-migrate-off-of-bintray/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ and re-install the packages.

The options for RabbitMQ RPM packages match to those listed above for our zero-dependency Erlang RPM:

* Using a [Yum repository on PackageCloud](/docs/install-rpm#cloudsmith). This would cover RHEL, CentOS, modern Fedora and openSUSE
* Using a [Yum repository on PackageCloud](/docs/install-rpm#dnf-repositories). This would cover RHEL, CentOS, modern Fedora and openSUSE
* Using a [direct download](/docs/install-rpm#downloads) from GitHub and installing its [dependencies](/docs/install-rpm#package-dependencies) the local package using `rpm install`

Our team plans to also distribute this package via [Cloudsmith.io](https://cloudsmith.io/~rabbitmq/repos/) in the near future.
Expand Down
2 changes: 1 addition & 1 deletion docs/download.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ Other guides related to Kubernetes:
## Debian (Apt) and RPM (Yum) Repositories

* [Debian](./install-debian#apt-quick-start)
* [RPM](./install-rpm#cloudsmith)
* [RPM](./install-rpm#dnf-repositories)

## Provisioning Tools (Chef, Puppet, etc)

Expand Down
232 changes: 63 additions & 169 deletions docs/install-debian.md

Large diffs are not rendered by default.

27 changes: 7 additions & 20 deletions docs/install-rpm.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ many releases behind [latest RabbitMQ releases](/release-information)
and may provide RabbitMQ versions that are already [out of support](/release-information).

Team RabbitMQ produces our own RPM packages and distributes them using a set of
[repository mirrors at `*.rabbitmq.com`](#cloudsmith).
[repositores at `*.rabbitmq.com`](#dnf-repositories).

There are two ways of installing these RPMs:

Expand Down Expand Up @@ -75,7 +75,7 @@ CentOS 7 and Fedora releases older than 26 are examples of such distributions.

Currently the list of supported RPM-based distributions includes

* Fedora 39 through 41
* Fedora 39 through 42
* [CentOS Stream](https://centos.org/centos-stream/) 9.x
* RedHat Enterprise Linux 9.x and 8.x (versions covered by [full support](https://access.redhat.com/support/policy/updates/errata))
* Amazon Linux 2023
Expand Down Expand Up @@ -131,23 +131,10 @@ manually. The dependencies are:
* `logrotate`


## Install Using a Cloudsmith Mirror dnf/yum Repository {#cloudsmith}
## Install Using dnf/yum Repositories from Team RabbitMQ {#dnf-repositories}

:::tip

Why does this section discuss mirrors? [Open source RabbitMQ release infrastructure](https://github.com/rabbitmq/server-packages/)
publishes packages to a services called [Cloudsmith](https://cloudsmith.io).

From there, the packages are distributed to two mirror repositories in the EU and North America.
Unlike the Cloudsmith account, these mirror repositories have significantly higher traffic quotas,
and downloads from them won't be blocked due to an exceeded quota for the month.

Please use these mirrors instead of installing the packages directly from Cloudsmith.

:::

The rest of this section will demonstrate how to set up a repository file
to install RabbitMQ and Erlang from one of the `*.rabbitmq.com` mirrors.
This section will demonstrate how to set up a repository file
to install RabbitMQ and Erlang from one of the `*.rabbitmq.com` dnf/yum repositories.

### Import the Signing Keys

Expand Down Expand Up @@ -719,7 +706,7 @@ Redirecting to /bin/systemctl status rabbitmq-server.service
└─2861 inet_gethost 4

Aug 26 10:21:30 localhost.localdomain rabbitmq-server[957]: ## ##
Aug 26 10:21:30 localhost.localdomain rabbitmq-server[957]: ## ## RabbitMQ 4.0.9. Copyright (c) 2005-2025 Broadcom. All Rights Reserved. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
Aug 26 10:21:30 localhost.localdomain rabbitmq-server[957]: ## ## RabbitMQ 4.1.2. Copyright (c) 2005-2025 Broadcom. All Rights Reserved. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
Aug 26 10:21:30 localhost.localdomain rabbitmq-server[957]: ########## Licensed under the MPL 2.0. Website: https://www.rabbitmq.com/
Aug 26 10:21:30 localhost.localdomain rabbitmq-server[957]: ###### ##
Aug 26 10:21:30 localhost.localdomain rabbitmq-server[957]: ########## Logs: /var/log/rabbitmq/[email protected]
Expand Down Expand Up @@ -777,7 +764,7 @@ The output will look similar to this:

```ini
Aug 26 11:03:04 localhost rabbitmq-server[968]: ## ##
Aug 26 11:03:04 localhost rabbitmq-server[968]: ## ## RabbitMQ 4.0.9. Copyright (c) 2005-2025 Broadcom. All Rights Reserved. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
Aug 26 11:03:04 localhost rabbitmq-server[968]: ## ## RabbitMQ 4.1.2. Copyright (c) 2005-2025 Broadcom. All Rights Reserved. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
Aug 26 11:03:04 localhost rabbitmq-server[968]: ########## Licensed under the MPL 2.0. Website: https://www.rabbitmq.com/
Aug 26 11:03:04 localhost rabbitmq-server[968]: ###### ##
Aug 26 11:03:04 localhost rabbitmq-server[968]: ########## Logs: /var/log/rabbitmq/[email protected]
Expand Down
30 changes: 5 additions & 25 deletions docs/signatures.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ also verify repository signatures.
RabbitMQ release artifacts, both binary and source,
are signed using [GnuPG](http://www.gnupg.org/) and [our release signing key](https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc).

In addition, Debian and RPM package repository content is signed by their
upstream repository's key. Currently this means Cloudsmith repository keys.
In addition, the contents of the [Debian](./install-debian/) repositories maintained by Team RabbitMQ
are signed using the same key.

## Importing Signing Keys {#importing-gpg-keys}

Expand Down Expand Up @@ -107,7 +107,7 @@ When using the [Team RabbitMQ modern Erlang PPA](https://launchpad.net/~rabbitmq
one more key needs to be added:

```bash
## Team RabbitMQ's main signing key
## Team RabbitMQ's signing key
curl -1sLf "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | sudo gpg --dearmor > /usr/share/keyrings/com.rabbitmq.team.gpg
```

Expand Down Expand Up @@ -142,8 +142,8 @@ source archive and its associated detached signature from
the download area:

```bash
gpg --verify rabbitmq-server_4.0.4-1_all.deb.asc rabbitmq-server_4.0.4-1_all.deb
# => gpg: Signature made Mon Aug 26 00:22:55 2024 EDT
gpg --verify rabbitmq-server_4.1.2-1_all.deb.asc rabbitmq-server_4.1.2-1_all.deb
# => gpg: Signature made (date elided)
# => gpg: using RSA key 0A9AF2115F4687BD29803A206B73A36E6026DFCA
# => gpg: Good signature from "RabbitMQ Release Signing Key <[email protected]>" [unknown]
# (elided)
Expand All @@ -166,23 +166,3 @@ GnuPG by signing it using your own key (to create your private key run `gpg --ge
```bash
gpg --sign-key 0x0A9AF2115F4687BD29803A206B73A36E6026DFCA
```


## Cloudsmith {#cloudsmith}

[Cloudsmith.io](https://cloudsmith.io/~rabbitmq/repos/) is a hosted package distribution
service that uses their own signing keys to sign the artifacts uploaded to it. The key(s) then
must be added to the system.

Cloudsmith provides repository setup script that include signing key import. However,
note that the script **does not** currently follow Debian best practices in terms of GPG key handling.

To import the key:

```bash
# import the Cloudsmith key
curl -1sLf https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key -o cloudsmith-rabbitmq-key.asc
gpg --import cloudsmith-rabbitmq-key.asc
```

After importing the key please follow the installation instructions in the [Debian](./install-debian) or [RPM-based Linux](./install-rpm) guides.
2 changes: 1 addition & 1 deletion docs/which-erlang.md
Original file line number Diff line number Diff line change
Expand Up @@ -363,7 +363,7 @@ are recommended.
Most recent versions can be obtained from a number of sources:

* Debian Erlang packages from Team RabbitMQ on [Cloudsmith and its mirror](install-debian#apt-repositories) or [Launchpad](install-debian#apt-launchpad-erlang)
* [Zero dependency Erlang RPM](https://github.com/rabbitmq/erlang-rpm) from Team RabbitMQ, also available [from a Cloudsmith mirror](install-rpm#cloudsmith)
* [Zero dependency Erlang RPM](https://github.com/rabbitmq/erlang-rpm) from Team RabbitMQ, also available [from a Cloudsmith mirror](install-rpm#dnf-repositories)
* As part of [RabbitMQ Docker image](https://github.com/docker-library/rabbitmq/)
* [Erlang/OTP Version Tree](https://erlang.org/download/otp_versions_tree) provides binary builds of patch releases for Windows
* [Erlang Solutions](https://packages.erlang-solutions.com/erlang/) package repositories
Expand Down
2 changes: 1 addition & 1 deletion versioned_docs/version-3.13/download.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ Other guides related to Kubernetes:
## Debian (Apt) and RPM (Yum) Repositories

* [Debian](./install-debian#apt-quick-start)
* [RPM](./install-rpm#cloudsmith)
* [RPM](./install-rpm#dnf-repositories)

## Provisioning Tools (Chef, Puppet, etc)

Expand Down
Loading