-
Notifications
You must be signed in to change notification settings - Fork 430
Ability to specify arbitrary config file variables is needed #76
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
Comments
I currently need this as well. I'd like to be able to set the heartbeat interval at the rabbit server so that it negotiates that value with all clients rather than having to configure it at each client (clients still can, to override, of course). |
We used the environment variables approach to configure our RabbitMQ servers for SSL, which works well. Now I have to plug in LDAP authentication support, which can only configured through a config file. Unfortunately, because of the SSL options, the entrypoint's script will override my rabbitmq.config file with the SSL stuff. I like the OP's idea; alternatively, we use dotted notation inside environment variables to override some YAML settings in some of our apps. Would be interesting to be able to modify the configuration file this way. e.g.: Meanwhile, is there any acceptable workaround that won't force me to operate all of the entrypoint's SSL mechanics within my configuration manager? |
|
I have run into the issue where I would like to configure the In its simplest form that would mean storing it as a kubernetes secret (And likely not storing it in version control) however at the moment this means you need to store the entire rabbitmq.conf as a secret and that you cannot keep that config in version control and this is not very practical. If I were able to refer to an environment variable I could keep the rabbitmq.conf in version control and keep only the relevant data (The value for I think the option to be able to refer to an environment variable for a single arbitrary parameter in the rabbitmq configuration is very much relevant and I hope this can be reconsidered in the future |
@ByteFlinger rabbitmq/3.7/docker-entrypoint.sh Line 47 in 10ad9d8
(In fact, it's even supported with an That'd be |
See also https://hub.docker.com/_/rabbitmq/ under "Setting default user and password": (https://github.com/docker-library/docs/tree/a702c5579f1199b6203d66a66e2a9021a6ea72a3/rabbitmq#setting-default-user-and-password)
|
RabbitMQ currently supports many more tunables in the config file then the entrypoint script supports:
https://www.rabbitmq.com/configure.html
The current entrypoint script paints things into a corner somewhat due to it's handling of some of the arguments (SSL, namely), assumptions about argument formatting of arguments by wrapping them in '<<"${val}">>', and the general nested format of the Rabbit config.
I believe the ability to set these variables is going to be a requirement for many users, especially for the settings documented in the production checklist. Unfortunately, I also believe that the complexity of the rabbitmq config file is too much for a simple bash script.
I propose a script that can build an hash of the default configs that the script currently builds, and that can then merge in a hash of user defined options. This would allow the script to continue maintain the settings it does now, and thereby maintain existing functionality, while also exposing the full config to the user so that they can perform any tuning needed for their environment.
I'm curious what others think of this idea and if others have other solutions in mind.
The text was updated successfully, but these errors were encountered: