From e550521ac15e37e6dce87560be4a7a503c9dc4b4 Mon Sep 17 00:00:00 2001 From: Wei Zhou Date: Mon, 13 Jul 2026 12:04:30 +0200 Subject: [PATCH 1/5] tools: Build docker image --- .github/workflows/docker-cloudstack-simulator.yml | 1 + tools/docker/Dockerfile | 13 ++++++------- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/docker-cloudstack-simulator.yml b/.github/workflows/docker-cloudstack-simulator.yml index ac778a48af54..c432d4717c46 100644 --- a/.github/workflows/docker-cloudstack-simulator.yml +++ b/.github/workflows/docker-cloudstack-simulator.yml @@ -21,6 +21,7 @@ on: push: branches: - main + - docker-image-build tags: - 4.* - 5.* diff --git a/tools/docker/Dockerfile b/tools/docker/Dockerfile index dcadfb3fead6..9728f92515e4 100644 --- a/tools/docker/Dockerfile +++ b/tools/docker/Dockerfile @@ -17,7 +17,7 @@ # # CloudStack-simulator build -FROM ubuntu:22.04 +FROM ubuntu:24.04 LABEL Vendor="Apache.org" License="ApacheV2" Version="4.23.0.0-SNAPSHOT" Author="Apache CloudStack " @@ -34,7 +34,8 @@ RUN apt-get -y update && apt-get install -y \ ipmitool \ iproute2 \ maven \ - openjdk-11-jdk \ + openjdk-17-jre-headless \ + openjdk-17-jdk \ python3-dev \ python-is-python3 \ python3-setuptools \ @@ -61,12 +62,10 @@ RUN find /var/lib/mysql -type f -exec touch {} \; && \ mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password by ''" --connect-expired-password; \ mvn -Pdeveloper -pl developer -Ddeploydb; \ mvn -Pdeveloper -pl developer -Ddeploydb-simulator; \ - MARVIN_FILE=`find /root/tools/marvin/dist/ -name "Marvin*.tar.gz"`; \ - rm -rf /usr/bin/x86_64-linux-gnu-gcc && \ - ln -s /usr/bin/gcc-10 /usr/bin/x86_64-linux-gnu-gcc; \ - pip3 install $MARVIN_FILE + MARVIN_FILE=`find /root/tools/marvin/dist/ -name "[mM]arvin*.tar.gz"`; \ + pip3 install $MARVIN_FILE --break-system-packages -RUN curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -; \ +RUN curl -sL https://deb.nodesource.com/setup_24.x | sudo -E bash -; \ apt-get install -y nodejs; \ cd ui && npm rebuild node-sass && npm install From 753931d80cb560d3ca9aa30db05a6bf8a713513b Mon Sep 17 00:00:00 2001 From: Wei Zhou Date: Mon, 13 Jul 2026 12:55:23 +0200 Subject: [PATCH 2/5] docker: run UI with NODE_OPTIONS=--openssl-legacy-provider --- tools/docker/supervisord.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/docker/supervisord.conf b/tools/docker/supervisord.conf index 1c14578c4cf3..e46d365722f6 100644 --- a/tools/docker/supervisord.conf +++ b/tools/docker/supervisord.conf @@ -16,7 +16,7 @@ redirect_stderr=true user=root [program:cloudstack-ui] -command=/bin/bash -c "npm run serve" +command=/bin/bash -c "NODE_OPTIONS=--openssl-legacy-provider npm run serve" directory=/root/ui stdout_logfile=/dev/stdout stdout_logfile_maxbytes=0 From d42692346c180dd4b12fc7315637deaded49608f Mon Sep 17 00:00:00 2001 From: Wei Zhou Date: Mon, 13 Jul 2026 15:23:46 +0200 Subject: [PATCH 3/5] docker: add MAVEN_OPTS --- tools/docker/supervisord.conf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/docker/supervisord.conf b/tools/docker/supervisord.conf index e46d365722f6..1e4090d270c1 100644 --- a/tools/docker/supervisord.conf +++ b/tools/docker/supervisord.conf @@ -8,6 +8,7 @@ autorestart=true user=root [program:cloudstack] +environment=MAVEN_OPTS="--add-opens=java.base/java.lang=ALL-UNNAMED --add-exports=java.base/sun.security.x509=ALL-UNNAMED" command=/bin/bash -c "mvn -pl client jetty:run -Dsimulator -Dorg.eclipse.jetty.annotations.maxWait=120" directory=/root stdout_logfile=/dev/stdout @@ -16,6 +17,7 @@ redirect_stderr=true user=root [program:cloudstack-ui] +environment=NODE_OPTIONS="--openssl-legacy-provider" command=/bin/bash -c "NODE_OPTIONS=--openssl-legacy-provider npm run serve" directory=/root/ui stdout_logfile=/dev/stdout From 4697a8155695fe71fdae8b5b5f8bd0fa534c2bb9 Mon Sep 17 00:00:00 2001 From: Wei Zhou Date: Tue, 14 Jul 2026 11:04:27 +0200 Subject: [PATCH 4/5] remove duplicated NODE_OPTIONS --- tools/docker/supervisord.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/docker/supervisord.conf b/tools/docker/supervisord.conf index 1e4090d270c1..4fe0b49546be 100644 --- a/tools/docker/supervisord.conf +++ b/tools/docker/supervisord.conf @@ -18,7 +18,7 @@ user=root [program:cloudstack-ui] environment=NODE_OPTIONS="--openssl-legacy-provider" -command=/bin/bash -c "NODE_OPTIONS=--openssl-legacy-provider npm run serve" +command=/bin/bash -c "npm run serve" directory=/root/ui stdout_logfile=/dev/stdout stdout_logfile_maxbytes=0 From 23cff6847c306882c32f0328c5ab0802ceaa23ad Mon Sep 17 00:00:00 2001 From: Wei Zhou Date: Tue, 14 Jul 2026 13:48:36 +0200 Subject: [PATCH 5/5] Apply suggestion --- .github/workflows/docker-cloudstack-simulator.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/docker-cloudstack-simulator.yml b/.github/workflows/docker-cloudstack-simulator.yml index c432d4717c46..ac778a48af54 100644 --- a/.github/workflows/docker-cloudstack-simulator.yml +++ b/.github/workflows/docker-cloudstack-simulator.yml @@ -21,7 +21,6 @@ on: push: branches: - main - - docker-image-build tags: - 4.* - 5.*