diff --git a/Dockerfile b/Dockerfile index a1eb24339..48a3e687d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -64,9 +64,11 @@ RUN --mount=type=bind,from=infiniflow/ragflow_deps:latest,source=/,target=/deps echo 'url = "https://pypi.tuna.tsinghua.edu.cn/simple"' >> /etc/uv/uv.toml && \ echo 'default = true' >> /etc/uv/uv.toml; \ fi; \ - tar xzf /deps/uv-x86_64-unknown-linux-gnu.tar.gz \ - && cp uv-x86_64-unknown-linux-gnu/* /usr/local/bin/ \ - && rm -rf uv-x86_64-unknown-linux-gnu \ + arch="$(uname -m)"; \ + if [ "$arch" = "x86_64" ]; then uv_arch="x86_64"; else uv_arch="aarch64"; fi; \ + tar xzf "/deps/uv-${uv_arch}-unknown-linux-gnu.tar.gz" \ + && cp "uv-${uv_arch}-unknown-linux-gnu/"* /usr/local/bin/ \ + && rm -rf "uv-${uv_arch}-unknown-linux-gnu" \ && uv python install 3.12 ENV PYTHONDONTWRITEBYTECODE=1 DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1 diff --git a/Dockerfile.deps b/Dockerfile.deps index 0405519d8..591b99eb8 100644 --- a/Dockerfile.deps +++ b/Dockerfile.deps @@ -3,7 +3,7 @@ FROM scratch # Copy resources downloaded via download_deps.py -COPY chromedriver-linux64-121-0-6167-85 chrome-linux64-121-0-6167-85 cl100k_base.tiktoken libssl1.1_1.1.1f-1ubuntu2_amd64.deb libssl1.1_1.1.1f-1ubuntu2_arm64.deb tika-server-standard-3.2.3.jar tika-server-standard-3.2.3.jar.md5 libssl*.deb uv-x86_64-unknown-linux-gnu.tar.gz / +COPY chromedriver-linux64-121-0-6167-85 chrome-linux64-121-0-6167-85 cl100k_base.tiktoken libssl1.1_1.1.1f-1ubuntu2_amd64.deb libssl1.1_1.1.1f-1ubuntu2_arm64.deb tika-server-standard-3.2.3.jar tika-server-standard-3.2.3.jar.md5 libssl*.deb uv-x86_64-unknown-linux-gnu.tar.gz uv-aarch64-unknown-linux-gnu.tar.gz / COPY nltk_data /nltk_data diff --git a/download_deps.py b/download_deps.py index 06de7349d..cbaf0a637 100644 --- a/download_deps.py +++ b/download_deps.py @@ -29,6 +29,7 @@ def get_urls(use_china_mirrors=False) -> list[Union[str, list[str]]]: ["https://registry.npmmirror.com/-/binary/chrome-for-testing/121.0.6167.85/linux64/chrome-linux64.zip", "chrome-linux64-121-0-6167-85"], ["https://registry.npmmirror.com/-/binary/chrome-for-testing/121.0.6167.85/linux64/chromedriver-linux64.zip", "chromedriver-linux64-121-0-6167-85"], "https://github.com/astral-sh/uv/releases/download/0.9.16/uv-x86_64-unknown-linux-gnu.tar.gz", + "https://github.com/astral-sh/uv/releases/download/0.9.16/uv-aarch64-unknown-linux-gnu.tar.gz", ] else: return [ @@ -40,6 +41,7 @@ def get_urls(use_china_mirrors=False) -> list[Union[str, list[str]]]: ["https://storage.googleapis.com/chrome-for-testing-public/121.0.6167.85/linux64/chrome-linux64.zip", "chrome-linux64-121-0-6167-85"], ["https://storage.googleapis.com/chrome-for-testing-public/121.0.6167.85/linux64/chromedriver-linux64.zip", "chromedriver-linux64-121-0-6167-85"], "https://github.com/astral-sh/uv/releases/download/0.9.16/uv-x86_64-unknown-linux-gnu.tar.gz", + "https://github.com/astral-sh/uv/releases/download/0.9.16/uv-aarch64-unknown-linux-gnu.tar.gz", ]