Skip to content

Commit f8ede7e

Browse files
GsantomaggioHoloRin
authored andcommitted
Merge pull request #2838 from rabbitmq/rabbitmq-server-2837
Fix the docker image for use with uncompressed plugins (cherry picked from commit c30861e)
1 parent ed9124b commit f8ede7e

File tree

1 file changed

+20
-14
lines changed

1 file changed

+20
-14
lines changed

packaging/docker-image/Dockerfile

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -275,21 +275,27 @@ RUN rabbitmq-plugins enable --offline rabbitmq_management && \
275275
rabbitmq-plugins is_enabled rabbitmq_management --offline
276276
# extract "rabbitmqadmin" from inside the "rabbitmq_management-X.Y.Z.ez" plugin zipfile
277277
# see https://github.com/docker-library/rabbitmq/issues/207
278+
# RabbitMQ 3.9 onwards uses uncompressed plugins by default, in which case extraction is
279+
# unnecesary
278280
RUN set -eux; \
279-
erl -noinput -eval ' \
280-
{ ok, AdminBin } = zip:foldl(fun(FileInArchive, GetInfo, GetBin, Acc) -> \
281-
case Acc of \
282-
"" -> \
283-
case lists:suffix("/rabbitmqadmin", FileInArchive) of \
284-
true -> GetBin(); \
285-
false -> Acc \
286-
end; \
287-
_ -> Acc \
288-
end \
289-
end, "", init:get_plain_arguments()), \
290-
io:format("~s", [ AdminBin ]), \
291-
init:stop(). \
292-
' -- /plugins/rabbitmq_management-*.ez > /usr/local/bin/rabbitmqadmin; \
281+
if [ -s /plugins/rabbitmq_management-*.ez ]; then \
282+
erl -noinput -eval ' \
283+
{ ok, AdminBin } = zip:foldl(fun(FileInArchive, GetInfo, GetBin, Acc) -> \
284+
case Acc of \
285+
"" -> \
286+
case lists:suffix("/rabbitmqadmin", FileInArchive) of \
287+
true -> GetBin(); \
288+
false -> Acc \
289+
end; \
290+
_ -> Acc \
291+
end \
292+
end, "", init:get_plain_arguments()), \
293+
io:format("~s", [ AdminBin ]), \
294+
init:stop(). \
295+
' -- /plugins/rabbitmq_management-*.ez > /usr/local/bin/rabbitmqadmin; \
296+
else \
297+
cp /plugins/rabbitmq_management-*/priv/www/cli/rabbitmqadmin /usr/local/bin/rabbitmqadmin; \
298+
fi; \
293299
[ -s /usr/local/bin/rabbitmqadmin ]; \
294300
chmod +x /usr/local/bin/rabbitmqadmin; \
295301
apt-get update; apt-get install -y --no-install-recommends python3; rm -rf /var/lib/apt/lists/*; \

0 commit comments

Comments
 (0)