Skip to content

Commit 2810d5c

Browse files
committed
Ensure "rabbitmqadmin" is extracted and ready for use in the management image variants
1 parent 28001b5 commit 2810d5c

File tree

2 files changed

+46
-0
lines changed

2 files changed

+46
-0
lines changed

3.6/alpine/management/Dockerfile

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,26 @@ FROM rabbitmq:alpine
22

33
RUN rabbitmq-plugins enable --offline rabbitmq_management
44

5+
# extract "rabbitmqadmin" from inside the "rabbitmq_management-X.Y.Z.ez" plugin zipfile
6+
# see https://github.com/docker-library/rabbitmq/issues/207
7+
RUN set -eux; \
8+
erl -noinput -eval ' \
9+
{ ok, AdminBin } = zip:foldl(fun(FileInArchive, GetInfo, GetBin, Acc) -> \
10+
case Acc of \
11+
"" -> \
12+
case lists:suffix("/rabbitmqadmin", FileInArchive) of \
13+
true -> GetBin(); \
14+
false -> Acc \
15+
end; \
16+
_ -> Acc \
17+
end \
18+
end, "", init:get_plain_arguments()), \
19+
io:format("~s", [ AdminBin ]), \
20+
init:stop(). \
21+
' -- /plugins/rabbitmq_management-*.ez > /usr/local/bin/rabbitmqadmin; \
22+
[ -s /usr/local/bin/rabbitmqadmin ]; \
23+
chmod +x /usr/local/bin/rabbitmqadmin; \
24+
apk add --no-cache python; \
25+
rabbitmqadmin --version
26+
527
EXPOSE 15671 15672

3.6/debian/management/Dockerfile

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,28 @@ FROM rabbitmq
22

33
RUN rabbitmq-plugins enable --offline rabbitmq_management
44

5+
# extract "rabbitmqadmin" from inside the "rabbitmq_management-X.Y.Z.ez" plugin zipfile
6+
# see https://github.com/docker-library/rabbitmq/issues/207
7+
RUN set -eux; \
8+
erl -noinput -eval ' \
9+
{ ok, AdminBin } = zip:foldl(fun(FileInArchive, GetInfo, GetBin, Acc) -> \
10+
case Acc of \
11+
"" -> \
12+
case lists:suffix("/rabbitmqadmin", FileInArchive) of \
13+
true -> GetBin(); \
14+
false -> Acc \
15+
end; \
16+
_ -> Acc \
17+
end \
18+
end, "", init:get_plain_arguments()), \
19+
io:format("~s", [ AdminBin ]), \
20+
init:stop(). \
21+
' -- /plugins/rabbitmq_management-*.ez > /usr/local/bin/rabbitmqadmin; \
22+
[ -s /usr/local/bin/rabbitmqadmin ]; \
23+
chmod +x /usr/local/bin/rabbitmqadmin; \
24+
apt-get update; \
25+
apt-get install -y --no-install-recommends python; \
26+
rm -rf /var/lib/apt/lists/*; \
27+
rabbitmqadmin --version
28+
529
EXPOSE 15671 15672

0 commit comments

Comments
 (0)