Skip to content

Exchange type from plugin does not import from definitions #455

Closed
@caevv

Description

@caevv

After manually creating exchanges, I exported it and I'm now trying to import from my rabbitmq.conf.

On the definitions.json the exchanges is part of a installed plugin, but I get this error:

rabbitmq_1  | {"init terminating in do_boot",{error,{error,{amqp_error,command_invalid,"unknown exchange type 'x-message-deduplication'",none}}}}

The plugin is installed as I have tested by manually creating the exchanges without any issues, seems like the definitions is being imported before plugins are enabled somehow? But that would be weird as the plugin is enabled as part of the docker build.

docker-compose.yml

version: '3.7'

services:
    rabbitmq:
      build:
        context: .
      ports:
        - "15672:15672"
        - "5672:5672"
      restart: always
      volumes:
        - ./definitions.json:/opt/rabbitmq/definitions.json
        - ./rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf

Dockerfile

FROM rabbitmq:3.8-management

ADD https://github.com/noxdafox/rabbitmq-message-deduplication/releases/download/0.5.0/elixir-1.10.4.ez /opt/rabbitmq/plugins/
ADD https://github.com/noxdafox/rabbitmq-message-deduplication/releases/download/0.5.0/rabbitmq_message_deduplication-0.5.0.ez /opt/rabbitmq/plugins/

RUN chown rabbitmq:rabbitmq /opt/rabbitmq/plugins/*.ez \
    && rabbitmq-plugins enable --offline rabbitmq_message_deduplication

rabbitmq.conf

loopback_users.guest = false
listeners.tcp.default = 5672
management.tcp.port = 15672
management.load_definitions = /opt/rabbitmq/definitions.json

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions