Skip to content

Remove rabbitmq environment variable usage since it is removed in 3.9 #1996

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 26, 2021

Conversation

yosifkit
Copy link
Member

Environment variables are removed with the addition of 3.9: docker-library/rabbitmq#467. Users must provide an ini-style .conf file (or an erlang-based .config) instead of the environment variables that they were using in 3.8. A full .conf file is also valid to use with 3.8 and earlier (though old enough versions only support a .config file in erlang syntax).

Deprecation notice added to the 3.8 entrypoint script: docker-library/rabbitmq#424 which will also print out the config file it generated. Users can also docker cp their current config from their running RabbitMQ container.

Reading https://www.rabbitmq.com/versions.html, I am not certain when the "end of general support" for 3.8.x will be, so users should likely update their usage of rabbitmq as soon as possible

This may need changed depending on the outcome of docker-library/rabbitmq#501

Since we only have a 3.9-rc, should this wait for the 3.9.0 final release?

@tianon
Copy link
Member

tianon commented Jul 17, 2021

@michaelklishin @gerhard this PR is the image docs update that goes with the 3.8 / 3.9 deprecations -- it would be really useful if we could convince y'all to give it some review 😇 🙏

@tianon
Copy link
Member

tianon commented Jul 17, 2021

Regarding whether to update the docs now or wait until 3.9 is GA, my opinion is that given 3.8 is already warning about these things being deprecated, it would be useful to have the current documentation already match that (especially since the conversion to a configuration file can be done in 3.8 and then for users that have pre-converted, 3.9 will not be nearly as disruptive).

gerhard added a commit to rabbitmq/rabbitmq-website that referenced this pull request Jul 19, 2021
@gerhard
Copy link

gerhard commented Jul 19, 2021

@yosifkit Reading https://www.rabbitmq.com/versions.html, I am not certain when the "end of general support" for 3.8.x will be, so users should likely update their usage of rabbitmq as soon as possible

In the past we used to give all users 6 months to migrate to the new release series. I have just updated the versions page to capture this for 3.9.0.

Reviewing these changes now. Thanks for the heads up @tianon !


For setting a consistent cookie (especially useful for clustering but also for remote/cross-container administration via `rabbitmqctl`), use `RABBITMQ_ERLANG_COOKIE`:
**WARNING:** As of RabbitMQ 3.9, all of the docker-specifc variables listed below are deprecated and no longer used. Please use a configuration file instead; visit [rabbitmq.com/configure](https://www.rabbitmq.com/configure.html) to learn more about the configuration file. For a starting point, the 3.8 images will print out the config file it generated from supplied environment variables.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

- docker-specifc
+ docker-specific

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that we should encourage users to use configuration fragments, as mentioned here docker-library/rabbitmq#501 (comment).

Also, do we mean deprecated or removed? I think it's the latter.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we're splitting hairs a little bit on the distinction between those two -- we usually use the word "deprecated" for things like that because that's pretty clearly intended to mean "don't use this anymore and it might break in the future" (in this case, the "deprecation period" was just really short and even happened retroactively within the 3.8 series).

```

This can then be used from a separate instance to connect:
### Memory Limits
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This reminded me about adding support in RabbitMQ for cgroup memory limits. This is the last conversation that I remember (almost 1 year old now): docker-library/rabbitmq#424 (comment)

Is this still relevant @tianon?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this is definitely still relevant. I summarized it much shorter in docker-library/rabbitmq#424 (comment)

Copy link

@gerhard gerhard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are a few minor changes (mentioned above) that I think we should do before merging this.

In a new PR, would it be worth adding a section about the first-class & free support for managing RabbitMQ via cluster-operator? I know that this is K8s-specific, but there is a lot of RabbitMQ operations know-how, especially in the context of a cluster, that this operator handles out of the box. If nothing else, it can be used as a reference for all the things that users can (and might want to) implement in their container orchestration tool of choice.

@tianon
Copy link
Member

tianon commented Jul 26, 2021

In a new PR, would it be worth adding a section about the first-class & free support for managing RabbitMQ via cluster-operator? I know that this is K8s-specific, but there is a lot of RabbitMQ operations know-how, especially in the context of a cluster, that this operator handles out of the box. If nothing else, it can be used as a reference for all the things that users can (and might want to) implement in their container orchestration tool of choice.

Yeah, I think that's fine -- want to work on something with the wording/positioning you'd like to see?

@tianon tianon merged commit bab8d0a into docker-library:master Jul 26, 2021
@tianon tianon deleted the rabbitmq-3.9 branch July 26, 2021 23:29
@tianon
Copy link
Member

tianon commented Jul 26, 2021

(Getting this merged since the 3.9 changes are up now and we want the docs to match -- easy enough to update via more PRs. 👍)

michaelklishin pushed a commit to rabbitmq/rabbitmq-website that referenced this pull request Aug 9, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants