使っています rabbitmq:3-management
from https://hub.docker.com/_/rabbitmq/ ただし、必要なプラグインがありませんrabbitmq_delayed_message_exchange
。
このプラグインがイメージで使用できない場合、どうすれば有効にできますか?
FROM rabbitmq:3.7-management
RUN apt-get update && \
apt-get install -y curl unzip
RUN curl https://dl.bintray.com/rabbitmq/community-plugins/3.7.x/rabbitmq_delayed_message_exchange/rabbitmq_delayed_message_exchange-20171201-3.7.x.Zip > rabbitmq_delayed_message_exchange-20171201-3.7.x.Zip && \
unzip rabbitmq_delayed_message_exchange-20171201-3.7.x.Zip && \
rm -f rabbitmq_delayed_message_exchange-20171201-3.7.x.Zip && \
mv rabbitmq_delayed_message_exchange-20171201-3.7.x.ez plugins/
RUN rabbitmq-plugins enable rabbitmq_delayed_message_exchange
上記の答えを更新するだけです。ダウンロードしたプラグインをrabbitmqイメージにコピーしてインストールできます。
1。カスタムイメージを準備します:
Dockerfile
FROM rabbitmq:3.7.18-management
COPY ./rabbitmq_delayed_message_exchange-20171201-3.7.x.ez /opt/rabbitmq/plugins/
RUN rabbitmq-plugins enable rabbitmq_delayed_message_exchange
docker-composer.yml
rabbitmq:
image: rabbitmq-custom
ports:
- "5672:5672"
- "15672:15672"
2。イメージをビルドします
docker build -t rabbitmq-custom .
。docker composerを実行します:
docker-compose up