From ac9e051c88d8801509f37bb49936c6a97b3b7fc0 Mon Sep 17 00:00:00 2001 From: samunroyu Date: Thu, 25 Dec 2025 11:20:03 +0800 Subject: [PATCH 1/3] fix(FQDN): fix rocksdb compile --- .../pegasus-build-env/ubuntu2004/Dockerfile | 10 +++++++++- docker/thirdparties-src/Dockerfile | 19 ++++++++++++++++++- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/docker/pegasus-build-env/ubuntu2004/Dockerfile b/docker/pegasus-build-env/ubuntu2004/Dockerfile index c884507151..dca7c62c9c 100644 --- a/docker/pegasus-build-env/ubuntu2004/Dockerfile +++ b/docker/pegasus-build-env/ubuntu2004/Dockerfile @@ -78,9 +78,17 @@ RUN wget https://www.openssl.org/source/openssl-$OPENSSL_VERSION.tar.gz -P /opt/ && make install \ && ln -sf $OPENSSL_INSTALL_DIR/bin/openssl /usr/bin/openssl \ && ln -sf $OPENSSL_INSTALL_DIR/include/openssl /usr/local/include/openssl \ + && ln -sf $OPENSSL_INSTALL_DIR/lib64/libssl.so.3 /usr/lib/x86_64-linux-gnu/libssl.so \ + && ln -sf $OPENSSL_INSTALL_DIR/libcrypto.so.3 /usr/lib/x86_64-linux-gnu/libcrypto.so \ && echo "$OPENSSL_INSTALL_DIR/lib64" | tee /etc/ld.so.conf.d/openssl-3.0.conf \ - && ldconfig -v + && cp -r /usr/local/ssl/include/openssl /usr/include/ \ + && ldconfig +ENV CMAKE_PREFIX_PATH="$OPENSSL_INSTALL_DIR:$CMAKE_PREFIX_PATH" +ENV PKG_CONFIG_PATH="$OPENSSL_INSTALL_DIR/lib64/pkgconfig:$PKG_CONFIG_PATH" +ENV LD_LIBRARY_PATH="$OPENSSL_INSTALL_DIR/lib64:$LD_LIBRARY_PATH" +ENV LIBRARY_PATH="$OPENSSL_INSTALL_DIR/lib64:$LIBRARY_PATH" +ENV CPATH="$OPENSSL_INSTALL_DIR/include:$CPATH" ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 ENV CLASSPATH=$JAVA_HOME/lib/ ENV PATH=$JAVA_HOME/bin:$PATH diff --git a/docker/thirdparties-src/Dockerfile b/docker/thirdparties-src/Dockerfile index ca20e65607..fd3555007d 100644 --- a/docker/thirdparties-src/Dockerfile +++ b/docker/thirdparties-src/Dockerfile @@ -17,7 +17,24 @@ ARG GITHUB_BRANCH=master ARG OS_VERSION=rockylinux9 -FROM apache/pegasus:build-env-${OS_VERSION}-${GITHUB_BRANCH} as builder +FROM apache/pegasus:build-env-${OS_VERSION}-${GITHUB_BRANCH} as base + + +# --- Ubuntu 特有层 --- +FROM base AS stage-ubuntu2004 +ENV OPENSSL_ROOT_DIR=/usr/local/ssl \ + LIBRARY_PATH=/usr/local/ssl/lib64:/usr/local/ssl/lib:$LIBRARY_PATH \ + LD_LIBRARY_PATH=/usr/local/ssl/lib64:/usr/local/ssl/lib:$LD_LIBRARY_PATH \ + CMAKE_PREFIX_PATH=/usr/local/ssl:$CMAKE_PREFIX_PATH + +# --- 其他系统默认层 --- +FROM base AS stage-rockylinux9 +# 不做任何操作 + +# --- 最终编译切换 --- +# 必须再次声明 ARG 才能在 FROM 中使用 +ARG OS_VERSION +FROM stage-${OS_VERSION} AS builder WORKDIR /root From 6d0b3c2b30d159c7e3eba6f57adc2005ab83d81b Mon Sep 17 00:00:00 2001 From: samunroyu Date: Tue, 6 Jan 2026 17:54:04 +0800 Subject: [PATCH 2/3] fix(FQDN): fix rocksdb compile --- docker/thirdparties-src/Dockerfile | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/docker/thirdparties-src/Dockerfile b/docker/thirdparties-src/Dockerfile index fd3555007d..d241c5a2df 100644 --- a/docker/thirdparties-src/Dockerfile +++ b/docker/thirdparties-src/Dockerfile @@ -17,25 +17,24 @@ ARG GITHUB_BRANCH=master ARG OS_VERSION=rockylinux9 -FROM apache/pegasus:build-env-${OS_VERSION}-${GITHUB_BRANCH} as base +FROM apache/pegasus:build-env-${OS_VERSION}-${GITHUB_BRANCH} AS base_image - -# --- Ubuntu 特有层 --- -FROM base AS stage-ubuntu2004 +# --- 环境定义阶段:Ubuntu 2004 专属 --- +FROM base_image AS stage-ubuntu2004 ENV OPENSSL_ROOT_DIR=/usr/local/ssl \ LIBRARY_PATH=/usr/local/ssl/lib64:/usr/local/ssl/lib:$LIBRARY_PATH \ LD_LIBRARY_PATH=/usr/local/ssl/lib64:/usr/local/ssl/lib:$LD_LIBRARY_PATH \ - CMAKE_PREFIX_PATH=/usr/local/ssl:$CMAKE_PREFIX_PATH + CMAKE_PREFIX_PATH=/usr/local/ssl:$CMAKE_PREFIX_PATH -# --- 其他系统默认层 --- -FROM base AS stage-rockylinux9 -# 不做任何操作 +# --- 环境定义阶段:默认其他系统(不设置 ENV) --- +FROM base_image AS stage-rockylinux9 +FROM base_image AS stage-ubuntu2204 +FROM base_image AS stage-ubuntu1804 -# --- 最终编译切换 --- -# 必须再次声明 ARG 才能在 FROM 中使用 -ARG OS_VERSION +# --- 最终构建阶段:根据 OS_VERSION 自动指向上述某个 stage --- FROM stage-${OS_VERSION} AS builder + WORKDIR /root ARG GITHUB_BRANCH From cb0915dc91337b93deb0102aa0ed381cfb2d5351 Mon Sep 17 00:00:00 2001 From: samunroyu Date: Tue, 6 Jan 2026 19:43:09 +0800 Subject: [PATCH 3/3] fix(CI): Fix Ubuntu 20.04 with OpenSSL 3 installed: undefined reference to ERR_peek_last_error_all --- docker/thirdparties-src/Dockerfile | 3 --- 1 file changed, 3 deletions(-) diff --git a/docker/thirdparties-src/Dockerfile b/docker/thirdparties-src/Dockerfile index d241c5a2df..d87fecfd13 100644 --- a/docker/thirdparties-src/Dockerfile +++ b/docker/thirdparties-src/Dockerfile @@ -19,19 +19,16 @@ ARG GITHUB_BRANCH=master ARG OS_VERSION=rockylinux9 FROM apache/pegasus:build-env-${OS_VERSION}-${GITHUB_BRANCH} AS base_image -# --- 环境定义阶段:Ubuntu 2004 专属 --- FROM base_image AS stage-ubuntu2004 ENV OPENSSL_ROOT_DIR=/usr/local/ssl \ LIBRARY_PATH=/usr/local/ssl/lib64:/usr/local/ssl/lib:$LIBRARY_PATH \ LD_LIBRARY_PATH=/usr/local/ssl/lib64:/usr/local/ssl/lib:$LD_LIBRARY_PATH \ CMAKE_PREFIX_PATH=/usr/local/ssl:$CMAKE_PREFIX_PATH -# --- 环境定义阶段:默认其他系统(不设置 ENV) --- FROM base_image AS stage-rockylinux9 FROM base_image AS stage-ubuntu2204 FROM base_image AS stage-ubuntu1804 -# --- 最终构建阶段:根据 OS_VERSION 自动指向上述某个 stage --- FROM stage-${OS_VERSION} AS builder