This is an automated email from the ASF dual-hosted git repository.

shoothzj pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/master by this push:
     new 88bcdc981f Optimize Release Script for Docker Builds in BookKeeper 
(#4428)
88bcdc981f is described below

commit 88bcdc981f8daf42a1a011f0e2db72a134b86218
Author: ZhangJian He <[email protected]>
AuthorDate: Wed Jun 12 23:08:31 2024 +0800

    Optimize Release Script for Docker Builds in BookKeeper (#4428)
    
    ### Changes
    
    - Replaced `docker build` with `docker buildx build` to enhance 
cross-platform compatibility.
    - Modified Dockerfile commands to conditionally create user and group only 
if they do not already exist, preventing errors during the build process.
---
 dev/release/000-run-docker.sh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/dev/release/000-run-docker.sh b/dev/release/000-run-docker.sh
index 495227a7e9..845b17ec7e 100755
--- a/dev/release/000-run-docker.sh
+++ b/dev/release/000-run-docker.sh
@@ -33,7 +33,7 @@ export IMAGE_NAME="bookkeeper-release-build"
 
 pushd ${SCRIPT_DIR}
 
-docker build --rm=true -t ${IMAGE_NAME} .
+docker build --platform linux/amd64 --rm=true -t ${IMAGE_NAME} .
 
 popd
 
@@ -47,10 +47,10 @@ else # boot2docker uid and gid
   GROUP_ID=50
 fi
 
-docker build -t "${IMAGE_NAME}-${USER_NAME}" - <<UserSpecificDocker
-FROM --platform=linux/amd64 ${IMAGE_NAME}
-RUN groupadd --non-unique -g ${GROUP_ID} ${USER_NAME} && \
-  useradd -l -g ${GROUP_ID} -u ${USER_ID} -k /root -m ${USER_NAME} && \
+docker buildx build --platform linux/amd64 -t "${IMAGE_NAME}-${USER_NAME}" - 
<<UserSpecificDocker
+FROM ${IMAGE_NAME}
+RUN if ! getent group ${GROUP_ID} > /dev/null; then groupadd --non-unique -g 
${GROUP_ID} ${USER_NAME}; fi && \
+  if ! getent passwd ${USER_NAME} > /dev/null; then useradd -l -g ${GROUP_ID} 
-u ${GROUP_ID} -k /root -m ${USER_NAME}; fi && \
   ([ "$(dirname "$HOME")" = "/home" ] || ln -s /home $(dirname "$HOME")) && \
   mkdir -p /gpg && chown ${USER_ID}:${GROUP_ID} /gpg && chmod 700 /gpg
 ENV  HOME /home/${USER_NAME}

Reply via email to