fix(CRITICAL): Dockerfile Step 6 shell逻辑导致docker build失败

根因:[ -z "$VLLM_ROOT" ] && VLLM_ROOT=fallback
当VLLM_ROOT非空时(正常情况), [ -z ] 返回1, && 链传播非零退出码,
Docker RUN 步骤判定为失败,整个build中断。

修复:改用 if/fi 结构,不影响退出码:
if [ -z "$VLLM_ROOT" ]; then VLLM_ROOT=fallback; fi

同时第一行用 ; 而不是 && 连接,避免python3命令的stderr输出
影响退出码传播。
This commit is contained in:
Claude
2026-08-11 17:38:52 +00:00
parent 67aff30c33
commit 1ffd46b0f8

View File

@@ -34,8 +34,8 @@ RUN if [ -f /workspace/ex_engine/build_unified_bridge.sh ]; then \
echo "[Dockerfile] bridge build done"
# Step 6: Deploy ix_unified Python modules to vllm path (tolerant)
RUN VLLM_ROOT="$(python3 -c 'import vllm; print(vllm.__path__[0])' 2>/dev/null | grep -v '^INFO\|^WARNING\|^DEBUG' | tail -1)" && \
[ -z "$VLLM_ROOT" ] && VLLM_ROOT="/usr/local/corex/lib64/python3/dist-packages/vllm" ; \
RUN VLLM_ROOT="$(python3 -c 'import vllm; print(vllm.__path__[0])' 2>/dev/null | grep -v '^INFO\|^WARNING\|^DEBUG' | tail -1)" ; \
if [ -z "$VLLM_ROOT" ]; then VLLM_ROOT="/usr/local/corex/lib64/python3/dist-packages/vllm"; fi ; \
echo "[Dockerfile] VLLM_ROOT=${VLLM_ROOT}" && \
for f in ix_unified.py corex_so_loader.py moe_fused_dispatch.py corex_moe.py; do \
[ -f "/workspace/ex_engine/python/$f" ] && cp "/workspace/ex_engine/python/$f" "${VLLM_ROOT}/$f" 2>/dev/null || true ; \