diff options
author | Gerhard Lazu <gerhard@lazu.co.uk> | 2021-07-13 16:32:07 +0100 |
---|---|---|
committer | Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> | 2021-07-22 11:21:11 +0200 |
commit | d2a37749447311c1766c9d7521b80037bd04bfcc (patch) | |
tree | 260507edb4222f0f73717b030c24d3feb4a2a407 | |
parent | d03f4d2a77e552de52433edaa62e97385c16df0a (diff) | |
download | rabbitmq-server-git-master-with-tweaks-for-rel.tar.gz |
Build an erlang-release container image that works with cluster-operatormaster-with-tweaks-for-rel
Signed-off-by: Gerhard Lazu <gerhard@lazu.co.uk>
-rw-r--r-- | Dockerfile | 15 | ||||
-rwxr-xr-x | deps/rabbit/scripts/rabbitmq-defaults | 6 | ||||
-rw-r--r-- | erlang-release.mk | 15 | ||||
-rw-r--r-- | relx.config | 3 | ||||
-rw-r--r-- | vm.args.src | 2 |
5 files changed, 28 insertions, 13 deletions
diff --git a/Dockerfile b/Dockerfile index ab500be23f..6696c9e16b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -25,9 +25,9 @@ WORKDIR ${RABBITMQ_INSTALL_DIR} # TODO: do not hardcode ERTS version ENV PATH=${RABBITMQ_INSTALL_DIR}/bin:${RABBITMQ_INSTALL_DIR}/erts-12.0/bin/:$PATH -ARG RABBITMQ_DATA_DIR=${RABBITMQ_INSTALL_DIR}/var/lib/rabbitmq -ARG RABBITMQ_CONF_DIR=${RABBITMQ_INSTALL_DIR}/etc/rabbitmq -ARG RABBITMQ_LOG_DIR=${RABBITMQ_INSTALL_DIR}/var/log/rabbitmq +ARG RABBITMQ_DATA_DIR=/var/lib/rabbitmq +ARG RABBITMQ_CONF_DIR=/etc/rabbitmq +ARG RABBITMQ_LOG_DIR=/var/log/rabbitmq # Hint that this should be a volume VOLUME ${RABBITMQ_DATA_DIR} @@ -38,13 +38,18 @@ RUN echo "Configure rabbitmq system user & group..." \ ; useradd --uid 999 --system --home-dir ${RABBITMQ_DATA_DIR} --gid rabbitmq rabbitmq \ ; id rabbitmq \ ; mkdir -p ${RABBITMQ_DATA_DIR} ${RABBITMQ_CONF_DIR} ${RABBITMQ_LOG_DIR} \ - ; chown -fR rabbitmq:rabbitmq ${RABBITMQ_DATA_DIR} ${RABBITMQ_CONF_DIR} ${RABBITMQ_LOG_DIR} ${RABBITMQ_INSTALL_DIR}/log \ - ; chmod 770 ${RABBITMQ_DATA_DIR} ${RABBITMQ_CONF_DIR} ${RABBITMQ_LOG_DIR} ${RABBITMQ_INSTALL_DIR}/log + ; chown -fR rabbitmq:rabbitmq ${RABBITMQ_DATA_DIR} ${RABBITMQ_CONF_DIR} ${RABBITMQ_LOG_DIR} ${RABBITMQ_INSTALL_DIR} \ + ; chmod 770 ${RABBITMQ_DATA_DIR} ${RABBITMQ_CONF_DIR} ${RABBITMQ_LOG_DIR} ${RABBITMQ_INSTALL_DIR} # Configure locale ARG LOCALE=C.UTF-8 ENV LC_ALL=${LOCALE} LC_CTYPE=${LOCALE} LANG=${LOCALE} LANGUAGE=${LOCALE} +# Replace env vars in vm.args & sys.config +ENV RELX_REPLACE_OS_VARS=true +# Default to rabbit, cluster-operator will overwrite this in Kubernetes +ENV RABBITMQ_NODENAME=rabbit + CMD ["RabbitMQ", "console"] # https://www.rabbitmq.com/networking.html EXPOSE 1883 4369 5671 5672 8883 15674 15675 25672 61613 61614 diff --git a/deps/rabbit/scripts/rabbitmq-defaults b/deps/rabbit/scripts/rabbitmq-defaults index 7ba61db428..9db1bf63d4 100755 --- a/deps/rabbit/scripts/rabbitmq-defaults +++ b/deps/rabbit/scripts/rabbitmq-defaults @@ -7,11 +7,7 @@ ## ### next line potentially updated in package install steps -if test -f "$RABBITMQ_HOME/bin/RabbitMQ"; then - SYS_PREFIX=$RABBITMQ_HOME/$RABBITMQ_NODENAME -else - SYS_PREFIX= -fi +SYS_PREFIX= export SYS_PREFIX CLEAN_BOOT_FILE=start_clean diff --git a/erlang-release.mk b/erlang-release.mk index 15302f14b0..b8ee349822 100644 --- a/erlang-release.mk +++ b/erlang-release.mk @@ -10,15 +10,26 @@ _rel/RabbitMQ/RabbitMQ-$(PROJECT_VERSION).tar.gz: release: _rel/RabbitMQ/RabbitMQ-$(PROJECT_VERSION).tar.gz .PHONY: container-image -container-image: +container-image: container-image-build container-image-push + +.PHONY: container-image-build +container-image-build: docker build --progress plain \ --build-arg RABBITMQ_VERSION=$(PROJECT_VERSION) \ --tag pivotalrabbitmq/rabbitmq:erlang-release-$(PROJECT_VERSION) \ . + +.PHONY: container-image-push +container-image-push: docker push pivotalrabbitmq/rabbitmq:erlang-release-$(PROJECT_VERSION) .PHONY: container container: docker run --interactive --tty --rm \ -p 15672:15672 \ - pivotalrabbitmq/rabbitmq:erlang-release-$(PROJECT_VERSION) + pivotalrabbitmq/rabbitmq:erlang-release-$(PROJECT_VERSION) \ + $(CMD) + +.PHONY: clean +clean: + rm -fr _rel diff --git a/relx.config b/relx.config index bc28f6294d..34dfce988b 100644 --- a/relx.config +++ b/relx.config @@ -10,6 +10,9 @@ {rabbitmq_web_dispatch, none}, {rabbitmq_management, none}, + {rabbitmq_peer_discovery_common, none}, + {rabbitmq_peer_discovery_k8s, none}, + {prometheus, none}, {rabbitmq_prometheus, none}, diff --git a/vm.args.src b/vm.args.src index 680c8c68aa..ed8ae4a74d 100644 --- a/vm.args.src +++ b/vm.args.src @@ -1,5 +1,5 @@ ## Name of the node --sname rabbit +-name ${RABBITMQ_NODENAME} ## Cookie for distributed erlang #-setcookie rabbit |