@@ -235,8 +235,11 @@ if [ "$1" = 'rabbitmq-server' ] && [ "$haveConfig" ]; then
235
235
236
236
fullConfig+=( " { rabbit, $( rabbit_array " ${rabbitConfig[@]} " ) }" )
237
237
238
- # If management plugin is installed, then generate config consider this
238
+ # if management plugin is installed, generate config for it
239
+ # https://www.rabbitmq.com/management.html#configuration
239
240
if [ " $( rabbitmq-plugins list -m -e rabbitmq_management) " ]; then
241
+ rabbitManagementConfig=()
242
+
240
243
if [ " $haveManagementSslConfig " ]; then
241
244
IFS=$' \n '
242
245
rabbitManagementSslOptions=( $( rabbit_env_config ' management_ssl' " ${sslConfigKeys[@]} " ) )
@@ -253,9 +256,22 @@ if [ "$1" = 'rabbitmq-server' ] && [ "$haveConfig" ]; then
253
256
' { ssl, false }'
254
257
)
255
258
fi
259
+ rabbitManagementConfig+=(
260
+ " { listener, $( rabbit_array " ${rabbitManagementListenerConfig[@]} " ) }"
261
+ )
262
+
263
+ # if definitions file exists, then load it
264
+ # https://www.rabbitmq.com/management.html#load-definitions
265
+ managementDefinitionsFile=' /etc/rabbitmq/definitions.json'
266
+ if [ -f " ${managementDefinitionsFile} " ]; then
267
+ # see also https://github.com/docker-library/rabbitmq/pull/112#issuecomment-271485550
268
+ rabbitManagementConfig+=(
269
+ " { load_definitions, \" $managementDefinitionsFile \" }"
270
+ )
271
+ fi
256
272
257
273
fullConfig+=(
258
- " { rabbitmq_management, $( rabbit_array " { listener, $( rabbit_array " ${rabbitManagementListenerConfig [@]} " ) }" ) }"
274
+ " { rabbitmq_management, $( rabbit_array " ${rabbitManagementConfig [@]}" ) }"
259
275
)
260
276
fi
261
277
0 commit comments