From e371ff454a4479c63d0fa02acb99f47401893769 Mon Sep 17 00:00:00 2001 From: yuneng-jiang Date: Mon, 24 Nov 2025 20:45:56 -0800 Subject: [PATCH] Non root docker build fix (#17060) --- docker/Dockerfile.non_root | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/docker/Dockerfile.non_root b/docker/Dockerfile.non_root index 3fa0ab69e3b..2dcb7cb4787 100644 --- a/docker/Dockerfile.non_root +++ b/docker/Dockerfile.non_root @@ -20,27 +20,33 @@ COPY . . ENV LITELLM_NON_ROOT=true # Build Admin UI -RUN mkdir -p /tmp/litellm_ui && \ - npm install -g npm@latest && \ - npm cache clean --force && \ - cd ui/litellm-dashboard && \ - if [ -f "../../enterprise/enterprise_ui/enterprise_colors.json" ]; then \ - cp ../../enterprise/enterprise_ui/enterprise_colors.json ./ui_colors.json; \ - fi && \ - rm -f package-lock.json && \ - npm install --legacy-peer-deps && \ - npm run build && \ - cp -r ./out/* /tmp/litellm_ui/ && \ - cd /tmp/litellm_ui && \ +RUN mkdir -p /tmp/litellm_ui + +RUN npm install -g npm@latest && npm cache clean --force + +RUN cd /app/ui/litellm-dashboard && \ + if [ -f "/app/enterprise/enterprise_ui/enterprise_colors.json" ]; then \ + cp /app/enterprise/enterprise_ui/enterprise_colors.json ./ui_colors.json; \ + fi + +RUN cd /app/ui/litellm-dashboard && rm -f package-lock.json + +RUN cd /app/ui/litellm-dashboard && npm install --legacy-peer-deps + +RUN cd /app/ui/litellm-dashboard && npm run build + +RUN cp -r /app/ui/litellm-dashboard/out/* /tmp/litellm_ui/ + +RUN cd /tmp/litellm_ui && \ for html_file in *.html; do \ if [ "$html_file" != "index.html" ] && [ -f "$html_file" ]; then \ folder_name="${html_file%.html}" && \ mkdir -p "$folder_name" && \ mv "$html_file" "$folder_name/index.html"; \ fi; \ - done && \ - cd /app/ui/litellm-dashboard && \ - rm -rf ./out + done + +RUN cd /app/ui/litellm-dashboard && rm -rf ./out # Build package and wheel dependencies RUN rm -rf dist/* && python -m build && \