title: Import broker definitions into Dockerized RabbitMQ
body: <p>I have a RabbitMQ broker with some exchanges and queues already defined. I know I can export and import these definitions via the HTTP API. I want to Dockerize it, and have all the broker definitions imported when it starts.</p>
  
  <p>Ideally, it would be done as easily as it is done via the API. I could write a bunch of <code>rabbitmqctl</code> commands, but with a lot of definitions this might take quite a some time. Also, every change somebody else makes through the web interface will have to be inserted.</p>
  
  <p>I have managed to do what I want by writing a script that sleeps a curl request and starts the server, but this seems to be error prone and really not elegant. Are there any better ways to do definition importing/exporting
  , or is this the best that can be done?</p>
  
  <p>My Dockerfile:</p>
  
  <pre><code>FROM rabbitmq:management
  LABEL description="Rabbit image" version="0.0.1"
  ADD init.sh /init.sh          
  ADD rabbit_e6f2965776b0_2015-7-14.json /rabbit_config.json         
  CMD ["/init.sh"]
  </code></pre>
  
  <p>init.sh</p>
  
  <pre><code>sleep 10 &amp;&amp; curl -i -u guest:guest -d @/rabbit_config.json -H "content-type:application/json" http://localhost:15672/api/definitions -X POST &amp;
  
  rabbitmq-server $@
  </code></pre>