diff --git a/assembly/pom.xml b/assembly/pom.xml
index e4a9922b4dc..e4923b33e2a 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -703,5 +703,107 @@
+
+ docker
+
+
+
+ io.fabric8
+ docker-maven-plugin
+ ${docker-maven-plugin-version}
+
+
+
+ apache/activemq:${project.version}
+
+ ${project.basedir}/src/docker/Dockerfile
+ ${project.basedir}/src/docker
+
+ ${docker-java-version}
+ _TMP_/apache-activemq.tar.gz
+
+
+ _TMP_
+
+
+
+ ${project.build.directory}/apache-activemq-${project.version}-bin.tar.gz
+ apache-activemq.tar.gz
+ .
+
+
+
+
+
+
+
+
+
+
+ docker-build
+ package
+
+ build
+
+
+
+
+
+
+
+
+ docker-deploy
+
+
+
+ io.fabric8
+ docker-maven-plugin
+ ${docker-maven-plugin-version}
+
+
+
+ apache/activemq:${project.version}
+
+ ${project.basedir}/src/docker/Dockerfile
+ ${project.basedir}/src/docker
+
+
+ linux/amd64
+ linux/arm64
+
+
+
+ ${docker-java-version}
+ _TMP_/apache-activemq.tar.gz
+
+
+ _TMP_
+
+
+
+ ${project.build.directory}/apache-activemq-${project.version}-bin.tar.gz
+ apache-activemq.tar.gz
+ .
+
+
+
+
+
+
+
+
+
+
+ docker-deploy
+ package
+
+ build
+
+
+
+
+
+
+
diff --git a/assembly/src/docker/Dockerfile b/assembly/src/docker/Dockerfile
index c6b917a443c..26d12066995 100644
--- a/assembly/src/docker/Dockerfile
+++ b/assembly/src/docker/Dockerfile
@@ -16,7 +16,8 @@
# limitations under the License.
################################################################################
-FROM eclipse-temurin:17-jre
+ARG java_version=17
+FROM eclipse-temurin:${java_version}-jre
# ActiveMQ environment variables
ENV ACTIVEMQ_INSTALL_PATH /opt
diff --git a/assembly/src/docker/build.sh b/assembly/src/docker/build.sh
deleted file mode 100755
index a16dc0e7397..00000000000
--- a/assembly/src/docker/build.sh
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/bin/sh
-
-################################################################################
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-################################################################################
-
-usage() {
- cat <] [--image-name ] [--build-multi-platform ]
- build.sh --from-release --activemq-version [--image-name ] [--build-multi-platform ]
- build.sh --help
-
- If the --image-name flag is not used the built image name will be 'activemq'.
- Check the supported build platforms; you can verify with this command: docker buildx ls
- The supported platforms (OS/Arch) depend on the build's base image, in this case [eclipse-temurin:17-jre](https://hub.docker.com/_/eclipse-temurin).
-
-HERE
- exit 1
-}
-
-while [ $# -ge 1 ]
-do
-key="$1"
- case $key in
- --from-local-dist)
- FROM_LOCAL="true"
- ;;
- --from-release)
- FROM_RELEASE="true"
- ;;
- --image-name)
- IMAGE_NAME="$2"
- shift
- ;;
- --archive)
- ARCHIVE="$2"
- shift
- ;;
- --activemq-version)
- ACTIVEMQ_VERSION="$2"
- shift
- ;;
- --build-multi-platform)
- BUILD_MULTI_PLATFORM="$2"
- shift
- ;;
- --help)
- usage
- ;;
- *)
- # unknown option
- ;;
- esac
- shift
-done
-
-IMAGE_NAME=${IMAGE_NAME:-activemq}
-
-# TMPDIR must be contained within the working directory so it is part of the
-# Docker context. (i.e. it can't be mktemp'd in /tmp)
-TMPDIR=_TMP_
-
-cleanup() {
- rm -rf "${TMPDIR}"
-}
-trap cleanup EXIT
-
-mkdir -p "${TMPDIR}"
-
-if [ -n "${FROM_RELEASE}" ]; then
-
- [ -n "${ACTIVEMQ_VERSION}" ] || usage
-
- ACTIVEMQ_BASE_URL="https://dlcdn.apache.org/activemq/${ACTIVEMQ_VERSION}/"
- ACTIVEMQ_DIST_FILE_NAME="apache-activemq-${ACTIVEMQ_VERSION}-bin.tar.gz"
- CURL_OUTPUT="${TMPDIR}/${ACTIVEMQ_DIST_FILE_NAME}"
-
- echo "Downloading ${ACTIVEMQ_DIST_FILE_NAME} from ${ACTIVEMQ_BASE_URL}"
- curl -s "${ACTIVEMQ_BASE_URL}${ACTIVEMQ_DIST_FILE_NAME}" --output "${CURL_OUTPUT}"
-
- ACTIVEMQ_DIST="${CURL_OUTPUT}"
-
-elif [ -n "${FROM_LOCAL}" ]; then
-
- if [ -n "${ARCHIVE}" ]; then
- DIST_DIR=${ARCHIVE}
- else
- DIST_DIR="target/apache-activemq-*.tar.gz"
- fi
- ACTIVEMQ_DIST=${TMPDIR}/apache-activemq.tar.gz
- echo "Using ActiveMQ dist: ${DIST_DIR}"
- cp ${DIST_DIR} ${ACTIVEMQ_DIST}
-
-else
-
- usage
-
-fi
-
-if [ -n "${BUILD_MULTI_PLATFORM}" ]; then
- echo "Checking if buildx installed..."
- VERSION_BUILD_X=$(docker buildx version) > /dev/null 2>&1
-
- if [ $? -eq 0 ]; then
- echo "Found buildx {${VERSION_BUILD_X}} on your docker system"
- echo "Starting build of the docker image for the platform ${BUILD_MULTI_PLATFORM}"
-
- BUILD_X="buildx"
- BUILD_X_FLAG="--push"
- BUILD_X_PLATFORM="--platform ${BUILD_MULTI_PLATFORM}"
- else
- echo "Error: buildx not installed with your docker system"
- exit 2
- fi
-
-fi
-
-docker ${BUILD_X} build ${BUILD_X_PLATFORM} --build-arg activemq_dist="${ACTIVEMQ_DIST}" ${BUILD_X_FLAG} -t "${IMAGE_NAME}" .
diff --git a/pom.xml b/pom.xml
index 61751cb668e..a21d37d1af9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -133,6 +133,8 @@
5.5.0.6356
1.4
1.5.0
+ 0.45.1
+ 17
3.9.0
1.45
3.9.12