From a8ff9ff130420407dcfc4328649af27dcaca2c15 Mon Sep 17 00:00:00 2001 From: cord <1139172570@qq.com> Date: Tue, 1 Jul 2025 15:23:59 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E8=93=9D=E5=8C=BA=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...erfile-ascendbase-infer.txt => Dockerfile} | 111 +++++++++--------- .../Dockerfile/Dockerfile-ascend-toolkit.txt | 43 ------- IndexSDK/Dockerfile/install_deps.sh | 61 ---------- IndexSDK/Dockerfile/urls.conf | 8 -- 4 files changed, 56 insertions(+), 167 deletions(-) rename IndexSDK/Dockerfile/{Dockerfile-ascendbase-infer.txt => Dockerfile} (97%) delete mode 100644 IndexSDK/Dockerfile/Dockerfile-ascend-toolkit.txt delete mode 100644 IndexSDK/Dockerfile/install_deps.sh delete mode 100644 IndexSDK/Dockerfile/urls.conf diff --git a/IndexSDK/Dockerfile/Dockerfile-ascendbase-infer.txt b/IndexSDK/Dockerfile/Dockerfile similarity index 97% rename from IndexSDK/Dockerfile/Dockerfile-ascendbase-infer.txt rename to IndexSDK/Dockerfile/Dockerfile index 16a983823..7a8d14eaa 100644 --- a/IndexSDK/Dockerfile/Dockerfile-ascendbase-infer.txt +++ b/IndexSDK/Dockerfile/Dockerfile @@ -1,55 +1,56 @@ -FROM ubuntu:18.04 -WORKDIR /tmp -COPY install_deps.sh ./ -COPY ./urls.conf ./ -# TODO -RUN chmod 777 /tmp -# 系统包 + Pip3.9 -RUN . ./urls.conf && cp -a /etc/apt/sources.list /etc/apt/sources.list.bak && \ - sed -i "$ARCHIVE_DOCKR" /etc/apt/sources.list && \ - sed -i "$SECRITY_DOCKR" /etc/apt/sources.list -RUN apt update && \ - apt install --no-install-recommends ca-certificates -y && \ - apt install --no-install-recommends wget vim dos2unix net-tools ssh lsof sshpass -y && \ - apt install --no-install-recommends curl gcc g++ make pkg-config unzip autoconf autoconf -y && \ - apt install --no-install-recommends libblas3 liblapack3 gfortran libxml2 -y && \ - apt install --no-install-recommends pciutils liblapack-dev libblas-dev libffi-dev libssl-dev -y && \ - apt install --no-install-recommends zlib1g-dev xz-utils libgmpxx4ldbl -y && \ - apt clean && rm -rf /var/lib/apt/lists/* -# 安装Python -RUN . ./urls.conf && wget $PYTHON_DOCKR && \ - tar -xf Python-3.9.11.tar.xz && \ - cd Python-3.9.11 && \ - mkdir build && cd build && \ - ../configure --enable-shared --prefix=/usr/local/python3.9.11 && \ - make -j && make install && \ - cd .. && rm -rf build && cd .. && rm -rf Python-3.9.11 && rm -f Python-3.9.11.tar.xz && \ - ldconfig -ENV PATH=$PATH:/usr/local/python3.9.11/bin \ - LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/python3.9.11/lib -RUN . ./urls.conf && mkdir ~/.pip && touch ~/.pip/pip.conf && \ - echo "[global]" > ~/.pip/pip.conf && \ - echo "trusted-host=mirrors.aliyun.com" >> ~/.pip/pip.conf && \ - echo "index-url=$INDEX_DOCKR" >> ~/.pip/pip.conf && \ - echo "timeout=200" >> ~/.pip/pip.conf -# python包 -RUN pip3.9 install -U pip && \ - pip3.9 install numpy && \ - pip3.9 install decorator && \ - pip3.9 install sympy==1.4 && \ - pip3.9 install cffi==1.12.3 && \ - pip3.9 install pyyaml && \ - pip3.9 install pathlib2 && \ - pip3.9 install protobuf && \ - pip3.9 install scipy && \ - pip3.9 install requests && \ - pip3.9 install attrs && \ - pip3.9 install psutil && \ - rm -rf /root/.cache/pip - -# 安装cmake -RUN . ./urls.conf && wget $CMAKE_DOCKR && \ - tar xf cmake-3.23.1.tar.gz && cd cmake-3.23.1 && ./configure --prefix=/usr && \ - make -j && make -j install && cd .. && rm -rf cmake-3.23.1* && bash install_deps.sh -# 清理临时目录 -RUN rm -rf ./* +FROM ubuntu:18.04 +WORKDIR /tmp +COPY install_deps.sh ./ +COPY ./urls.conf ./ +# TODO +RUN chmod 777 /tmp +# 系统包 + Pip3.9 +RUN . ./urls.conf && cp -a /etc/apt/sources.list /etc/apt/sources.list.bak && \ + sed -i "$ARCHIVE_DOCKR" /etc/apt/sources.list && \ + sed -i "$SECRITY_DOCKR" /etc/apt/sources.list +RUN apt update && \ + apt install --no-install-recommends ca-certificates -y && \ + apt install --no-install-recommends wget vim dos2unix net-tools ssh lsof sshpass -y && \ + apt install --no-install-recommends curl gcc g++ make pkg-config unzip autoconf autoconf -y && \ + apt install --no-install-recommends libblas3 liblapack3 gfortran libxml2 -y && \ + apt install --no-install-recommends pciutils liblapack-dev libblas-dev libffi-dev libssl-dev -y && \ + apt install --no-install-recommends zlib1g-dev xz-utils libgmpxx4ldbl -y && \ + apt clean && rm -rf /var/lib/apt/lists/* +# 安装Python +RUN . ./urls.conf && wget $PYTHON_DOCKR && \ + tar -xf Python-3.9.11.tar.xz && \ + cd Python-3.9.11 && \ + mkdir build && cd build && \ + ../configure --enable-shared --prefix=/usr/local/python3.9.11 && \ + make -j && make install && \ + cd .. && rm -rf build && cd .. && rm -rf Python-3.9.11 && rm -f Python-3.9.11.tar.xz && \ + ldconfig +ENV PATH=$PATH:/usr/local/python3.9.11/bin \ + LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/python3.9.11/lib +RUN . ./urls.conf && mkdir ~/.pip && touch ~/.pip/pip.conf && \ + echo "[global]" > ~/.pip/pip.conf && \ + echo "trusted-host=mirrors.aliyun.com" >> ~/.pip/pip.conf && \ + echo "index-url=$INDEX_DOCKR" >> ~/.pip/pip.conf && \ + echo "timeout=200" >> ~/.pip/pip.conf +# python包 +RUN pip3.9 install -U pip && \ + pip3.9 install numpy && \ + pip3.9 install decorator && \ + pip3.9 install sympy==1.4 && \ + pip3.9 install cffi==1.12.3 && \ + pip3.9 install pyyaml && \ + pip3.9 install pathlib2 && \ + pip3.9 install protobuf && \ + pip3.9 install scipy && \ + pip3.9 install requests && \ + pip3.9 install attrs && \ + pip3.9 install psutil && \ + rm -rf /root/.cache/pip + +# 安装cmake +RUN . ./urls.conf && wget $CMAKE_DOCKR && \ + tar xf cmake-3.23.1.tar.gz && cd cmake-3.23.1 && ./configure --prefix=/usr && \ + make -j && make -j install && cd .. && rm -rf cmake-3.23.1* && bash install_deps.sh +# 清理临时目录 +RUN rm -rf ./* + diff --git a/IndexSDK/Dockerfile/Dockerfile-ascend-toolkit.txt b/IndexSDK/Dockerfile/Dockerfile-ascend-toolkit.txt deleted file mode 100644 index 4aa351800..000000000 --- a/IndexSDK/Dockerfile/Dockerfile-ascend-toolkit.txt +++ /dev/null @@ -1,43 +0,0 @@ -ARG BASE_VERSION -ARG BASE=ascendbase-infer:$BASE_VERSION -FROM $BASE -ARG CHIP=all -WORKDIR /tmp -COPY . ./ -# 1.驱动路径环境变量设置 -ARG ASCEND_BASE=/usr/local/Ascend -ENV LD_LIBRARY_PATH=\ -$ASCEND_BASE/driver/lib64:\ -$ASCEND_BASE/driver/lib64/common:\ -$ASCEND_BASE/driver/lib64/driver:\ -$LD_LIBRARY_PATH -# 2. CANN Toolkit安装 -ARG TOOLKIT_PKG -ARG TOOLKIT_PATH=$ASCEND_BASE/ascend-toolkit/latest - -# 安装Toolkit -RUN mkdir -p $ASCEND_BASE/driver && \ - cp version.info $ASCEND_BASE/driver/ && \ - cp ascend_install.info /etc/ && \ - if [ "$CHIP" != "all" ]; \ - then \ - CHIPOPTION="--chip=$CHIP"; \ - else \ - CHIPOPTION=""; \ - fi && \ - chmod +x $TOOLKIT_PKG && \ - ./$TOOLKIT_PKG --quiet --install --install-path=$ASCEND_BASE \ - --install-for-all $CHIPOPTION && \ - rm -f $TOOLKIT_PKG && \ - rm -rf $ASCEND_BASE/driver && \ - rm -f /etc/ascend_install.info - -ENV GLOG_v=2 \ - LD_LIBRARY_PATH=$TOOLKIT_PATH/runtime/lib64:$LD_LIBRARY_PATH \ - TBE_IMPL_PATH=$TOOLKIT_PATH/opp/op_impl/built-in/ai_core/tbe \ - PATH=$TOOLKIT_PATH/atc/ccec_compiler/bin:$TOOLKIT_PATH/atc/bin:$PATH \ - ASCEND_OPP_PATH=$TOOLKIT_PATH/opp \ - ASCEND_AICPU_PATH=$TOOLKIT_PATH -ENV PYTHONPATH=$TBE_IMPL_PATH:$PYTHONPATH - -RUN rm -rf ./* \ No newline at end of file diff --git a/IndexSDK/Dockerfile/install_deps.sh b/IndexSDK/Dockerfile/install_deps.sh deleted file mode 100644 index 29db4cd5d..000000000 --- a/IndexSDK/Dockerfile/install_deps.sh +++ /dev/null @@ -1,61 +0,0 @@ -set -e -. ./urls.conf -# OpenBLAS -wget ${OpenBLAS_SH} -O OpenBLAS-0.3.10.tar.gz -tar -xf OpenBLAS-0.3.10.tar.gz -cd OpenBLAS-0.3.10 -make FC=gfortran USE_OPENMP=1 -j -make install -ln -s /opt/OpenBLAS/lib/libopenblas.so /usr/lib/libopenblas.so -cd .. && rm -f OpenBLAS-0.3.10.tar.gz && rm -rf OpenBLAS-0.3.10 - -# faiss 1.7.4 -install_path=/usr/local/faiss/faiss1.7.4 -wget ${FAISS_SH} -O faiss-1.7.4.tar.gz -tar -xf faiss-1.7.4.tar.gz && cd faiss-1.7.4/faiss - -arch="$(uname -m)" -if [ "${arch}" = "aarch64" ]; then - gcc_version="$(gcc -dumpversion)" - if ["${gcc_version}" = "4.8.5" ]; then - sed -i '20i /*' utils/simdlib.h - sed -i '24i */' utils/simdlib.h - fi -fi -sed -i "131 i\\ - \\ - virtual void search_with_filter (idx_t n, const float *x, idx_t k,\\ - float *distances, idx_t *labels, const void *mask = nullptr) const {} \\ -" Index.h -sed -i "38 i\\ - \\ -template \\ -IndexIDMapTemplate::IndexIDMapTemplate (IndexT *index, std::vector &ids):\\ - index (index),\\ - own_fields (false)\\ -{\\ - this->is_trained = index->is_trained;\\ - this->metric_type = index->metric_type;\\ - this->verbose = index->verbose;\\ - this->d = index->d;\\ - id_map = ids;\\ -}\\ -" IndexIDMap.cpp -sed -i "29 i\\ - \\ - explicit IndexIDMapTemplate (IndexT *index, std::vector &ids);\\ -" IndexIDMap.h -sed -i "199 i\\ - utils/sorting.h -" CMakeLists.txt - -cd .. -cmake -B build . -DFAISS_ENABLE_GPU=OFF -DFAISS_ENABLE_PYTHON=OFF -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${install_path} -cd build && make -j && make install -cd ../.. && rm -rf faiss-1.7.4* - -wget ${RELEASE_SH} && \ -cp release-1.8.1.tar.gz /tmp/googletest-release-1.8.1.tar.gz && \ -tar xf release-1.8.1.tar.gz && cd googletest-release-1.8.1 && \ -cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/usr/local/gtest . && make -j && make install && \ -cd .. && rm -rf release-1.8.1.tar.gz googletest-release-1.8.1 \ No newline at end of file diff --git a/IndexSDK/Dockerfile/urls.conf b/IndexSDK/Dockerfile/urls.conf deleted file mode 100644 index dfc67ca6f..000000000 --- a/IndexSDK/Dockerfile/urls.conf +++ /dev/null @@ -1,8 +0,0 @@ -OpenBLAS_SH=https://github.com/xianyi/OpenBLAS/archive/v0.3.10.tar.gz -FAISS_SH=https://github.com/facebookresearch/faiss/archive/v1.7.4.tar.gz -RELEASE_SH=https://github.com/google/googletest/archive/refs/tags/release-1.8.1.tar.gz -PYTHON_DOCKR=https://repo.huaweicloud.com/python/3.9.11/Python-3.9.11.tar.xz -CMAKE_DOCKR=https://github.com/Kitware/CMake/releases/download/v3.23.1/cmake-3.23.1.tar.gz -INDEX_DOCKR=http://mirrors.aliyun.com/pypi/simple -ARCHIVE_DOCKR=s@http://.*archive.ubuntu.com@http://mirrors.huaweicloud.com@g -SECRITY_DOCKR=s@http://.*security.ubuntu.com@http://mirrors.huaweicloud.com@g \ No newline at end of file -- Gitee From 68821e2ab476609203ecadf0415b8bb1ce19eab7 Mon Sep 17 00:00:00 2001 From: cord <1139172570@qq.com> Date: Tue, 1 Jul 2025 16:24:20 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E8=93=9D=E5=8C=BA=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IndexSDK/Dockerfile/Dockerfile | 75 ++++++++++++++++++++++++++++------ 1 file changed, 62 insertions(+), 13 deletions(-) diff --git a/IndexSDK/Dockerfile/Dockerfile b/IndexSDK/Dockerfile/Dockerfile index 7a8d14eaa..41738ab91 100644 --- a/IndexSDK/Dockerfile/Dockerfile +++ b/IndexSDK/Dockerfile/Dockerfile @@ -1,13 +1,7 @@ FROM ubuntu:18.04 WORKDIR /tmp -COPY install_deps.sh ./ -COPY ./urls.conf ./ -# TODO RUN chmod 777 /tmp # 系统包 + Pip3.9 -RUN . ./urls.conf && cp -a /etc/apt/sources.list /etc/apt/sources.list.bak && \ - sed -i "$ARCHIVE_DOCKR" /etc/apt/sources.list && \ - sed -i "$SECRITY_DOCKR" /etc/apt/sources.list RUN apt update && \ apt install --no-install-recommends ca-certificates -y && \ apt install --no-install-recommends wget vim dos2unix net-tools ssh lsof sshpass -y && \ @@ -17,7 +11,7 @@ RUN apt update && \ apt install --no-install-recommends zlib1g-dev xz-utils libgmpxx4ldbl -y && \ apt clean && rm -rf /var/lib/apt/lists/* # 安装Python -RUN . ./urls.conf && wget $PYTHON_DOCKR && \ +RUN wget https://repo.huawei.com/python/3.9.11/Python-3.9.11.tar.xz && \ tar -xf Python-3.9.11.tar.xz && \ cd Python-3.9.11 && \ mkdir build && cd build && \ @@ -27,10 +21,10 @@ RUN . ./urls.conf && wget $PYTHON_DOCKR && \ ldconfig ENV PATH=$PATH:/usr/local/python3.9.11/bin \ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/python3.9.11/lib -RUN . ./urls.conf && mkdir ~/.pip && touch ~/.pip/pip.conf && \ +RUN mkdir ~/.pip && touch ~/.pip/pip.conf && \ echo "[global]" > ~/.pip/pip.conf && \ echo "trusted-host=mirrors.aliyun.com" >> ~/.pip/pip.conf && \ - echo "index-url=$INDEX_DOCKR" >> ~/.pip/pip.conf && \ + echo "index-url=http://mirrors.aliyun.com/pypi/simple" >> ~/.pip/pip.conf && \ echo "timeout=200" >> ~/.pip/pip.conf # python包 RUN pip3.9 install -U pip && \ @@ -48,9 +42,64 @@ RUN pip3.9 install -U pip && \ rm -rf /root/.cache/pip # 安装cmake -RUN . ./urls.conf && wget $CMAKE_DOCKR && \ - tar xf cmake-3.23.1.tar.gz && cd cmake-3.23.1 && ./configure --prefix=/usr && \ - make -j && make -j install && cd .. && rm -rf cmake-3.23.1* && bash install_deps.sh -# 清理临时目录 +RUN wget https://github.com/Kitware/CMake/releases/download/v3.24.0/cmkae-3.24.0.tar.gz && \ + tar xf cmake-3.24.0.tar.gz && cd cmake-3.23.1 && ./configure --prefix=/usr && \ + make -j && make -j install && cd .. && rm -rf cmake-3.24.0* + +RUN wget https://github.com/xianyi/OpenBLAS/archive/v0.3.10.tar.gz -O OpenBLAS-0.3.10.tar.gz &&\ + tar -xf OpenBLAS-0.3.10.tar.gz && \ + cd OpenBLAS-0.3.10 && \ + make FC=gfortran USE_OPENMP=1 -j && \ + make install && \ + ln -s /opt/OpenBLAS/lib/libopenblas.so /usr/lib/libopenblas.so && \ + cd .. && rm -f OpenBLAS-0.3.10.tar.gz && rm -rf OpenBLAS-0.3.10 + +ARG install_path=/usr/local/faiss/faiss1.10.0 +RUN wget https:/github.com/facebookresearch/faiss/archive/v1.10.0.tar.gz -O faiss-1.10.0.tar.gz && \ + sed -i "131 i vertual void search_with_filter (idx_t n, const float *x, idx_t k, float *distances, idx_t *labels, const void *mask = nullptr) const {}" Index.h && \ + sed -i "38 i template IndexIDMapTemlate::IndexIDMapTemplate (IndexT *index, std::vector &idx): index (idnex), own_fields (false) {this->is_trained = index->is_trained; this->metric_type = index->metric_type; this->verbose; this->d = index->d; id_map = ids;}" IndexIDMap.cpp &&\ + sed -i "29 i explicit IndexIDMapTemplate (IndexT *index, std::vector &ids); " IndexIDMap.h &&\ + cd .. && \ + cmake -B build . -DFAISS_ENABLE_GPU=OFF -DFAISS_ENABLE_PYTHON=OFF -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${install_path} && \ + cd build && nake -j && make install && \ + cd ../. && rm -f v1.10.tar.gz && rm -rf faiss-1.10.0 + +ARG BASE_VERSION:v1.0 +ARG BASE=ascendbase-infer:$BASE_VERSION +ARG CHIP=all +WORKDIR /tmp +ARG ASCEND_BASE=/home/HwHiAiUser/ascendbase +ARG TOOLKIT_PKG=Ascend-cann-toolkit*_linux${ARCH}.run +ARG TOOLKIT_PATH=$ASCEND_BASE/ascend-toolkit/latest + +RUN gpoupadd HwHiAiUser && useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash +COPY --chown=HwHiAiUser:HwHiAiUser $TOOLKIT_PKG ./ +USER HwHiAiUser:HwHiAiUser +RUN chmod + $TOOLKIT_PKG && \ + ./$TOOLKIT_PKG --quit --full --install-path=$ASCEND_BASE --install-for-all &&\ + rm -f $TOOLKIT_PKG + +ENV GLOG_v=2 +ENV LD_LIBRARY_PATH=$TOOLKIT_PATH/runtime/lib64:$LD_LIBRARY_PATH +ENV TBE_IMPL_PATH=$TOOLKIT_PATH/opp/op_impl/built-in/ai_core/tbe +ENV PATH=$TOOLKIT_PATH/atc/ccec_compiler/bin:$TOOLKIT_PATH/atc/bin:$PATH +ENV ASCEND_OPP_PATH=$TOOLKIT_PATH/opp +ENV ASCEND_AICPU_PATH=$TOOLKIT_PATH +ENV PYTHONPATH=$TBE_IMPL_PATH:$PYTHONPATH + +COPY --chown=HwHiAiUser:HwHiAiUser ./Ascend-mindxsdk-mxindex*_linux-${ARCH}.run ./ +RUN bash Ascend-mindxsdk-mxindex*_linux-${ARCH}.run --quit --install --install_path=/home/HwHiAiUser/Ascend/ --platform=${PLATFORM} +ENV MX_INDEX_MODELPATH=/home/HwHiAiUser/Ascend/modelpath +RUN cd /home/HwHiAiUser/Ascend/mxIndex/ops && ./custom_opp_${arch}.run && mkdir -p ${MX_INDEX_MODELPATH} +ENV ASCEND_HOME=/home/HwHiAiUser/Ascend/ + +USER root RUN rm -rf ./* +USER HwHiAiUser:HwHiAiUser +RUN touch /home/HwHiAiUser/.vimrc && \ + echo 'set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936' >> /home/HwHiAiUser/.vimrc && | + sed -i '$a\set termencoding=utf-8' /home/HwHiAiUser/vimrc && \ + sed -i '$a\set encoding=utf-8' /home/HwHiAiUser/.vimrc + +WORKDIR /home/HwHiAiUser -- Gitee From 5bb89d4d58030c9ca54378603cc4da017b784f6d Mon Sep 17 00:00:00 2001 From: cord <1139172570@qq.com> Date: Tue, 1 Jul 2025 16:54:50 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E8=93=9D=E5=8C=BA=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IndexSDK/Dockerfile/Dockerfile | 38 ++++++++++++++++++++++------------ 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/IndexSDK/Dockerfile/Dockerfile b/IndexSDK/Dockerfile/Dockerfile index 41738ab91..05fcf4ea1 100644 --- a/IndexSDK/Dockerfile/Dockerfile +++ b/IndexSDK/Dockerfile/Dockerfile @@ -1,5 +1,7 @@ FROM ubuntu:18.04 WORKDIR /tmp +ARG ARCH=x86_64 +ARG PLATFORM=310P RUN chmod 777 /tmp # 系统包 + Pip3.9 RUN apt update && \ @@ -11,7 +13,7 @@ RUN apt update && \ apt install --no-install-recommends zlib1g-dev xz-utils libgmpxx4ldbl -y && \ apt clean && rm -rf /var/lib/apt/lists/* # 安装Python -RUN wget https://repo.huawei.com/python/3.9.11/Python-3.9.11.tar.xz && \ +RUN wget https://repo.huaweicloud.com/python/3.9.11/Python-3.9.11.tar.xz && \ tar -xf Python-3.9.11.tar.xz && \ cd Python-3.9.11 && \ mkdir build && cd build && \ @@ -43,7 +45,7 @@ RUN pip3.9 install -U pip && \ # 安装cmake RUN wget https://github.com/Kitware/CMake/releases/download/v3.24.0/cmkae-3.24.0.tar.gz && \ - tar xf cmake-3.24.0.tar.gz && cd cmake-3.23.1 && ./configure --prefix=/usr && \ + tar xf cmake-3.24.0.tar.gz && cd cmake-3.24.0 && ./configure --prefix=/usr && \ make -j && make -j install && cd .. && rm -rf cmake-3.24.0* RUN wget https://github.com/xianyi/OpenBLAS/archive/v0.3.10.tar.gz -O OpenBLAS-0.3.10.tar.gz &&\ @@ -56,27 +58,37 @@ RUN wget https://github.com/xianyi/OpenBLAS/archive/v0.3.10.tar.gz -O OpenBLAS-0 ARG install_path=/usr/local/faiss/faiss1.10.0 RUN wget https:/github.com/facebookresearch/faiss/archive/v1.10.0.tar.gz -O faiss-1.10.0.tar.gz && \ - sed -i "131 i vertual void search_with_filter (idx_t n, const float *x, idx_t k, float *distances, idx_t *labels, const void *mask = nullptr) const {}" Index.h && \ - sed -i "38 i template IndexIDMapTemlate::IndexIDMapTemplate (IndexT *index, std::vector &idx): index (idnex), own_fields (false) {this->is_trained = index->is_trained; this->metric_type = index->metric_type; this->verbose; this->d = index->d; id_map = ids;}" IndexIDMap.cpp &&\ + tar -xf faiss-1.10.0.tar.gz && cd faiss-1.10.0/faiss && \ + sed -i "131 i virtual void search_with_filter (idx_t n, const float *x, idx_t k, float *distances, idx_t *labels, const void *mask = nullptr) const {}" Index.h && \ + sed -i "38 i template IndexIDMapTemplate::IndexIDMapTemplate (IndexT *index, std::vector &ids): index (index), own_fields (false) {this->is_trained = index->is_trained; this->metric_type = index->metric_type; this->verbose = index->verbose; this->d = index->d; id_map = ids;}" IndexIDMap.cpp &&\ sed -i "29 i explicit IndexIDMapTemplate (IndexT *index, std::vector &ids); " IndexIDMap.h &&\ + sed -i "199 i utils/sorting.h" CMakeList.txt && \ cd .. && \ cmake -B build . -DFAISS_ENABLE_GPU=OFF -DFAISS_ENABLE_PYTHON=OFF -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${install_path} && \ - cd build && nake -j && make install && \ - cd ../. && rm -f v1.10.tar.gz && rm -rf faiss-1.10.0 + cd build && make -j && make install && \ + cd ../.. && rm -f v1.10.0.tar.gz && rm -rf faiss-1.10.0 + +RUN sed -i '$a\export LD_LIBRARY_PATH=/usr/local/faiss/faiss1.10.0/lib:$LD_LIBRARY_PATH' ~/.bashrc + +RUN wget https://github.com/google/googletest/archive/refs/tags/release-1.8.1.tar.gz && \ + cp release-1.8.1.tar.gz /tmp/googletest-release-1.8.1.tar.gz && \ + tar xf release-1.8.1.tar.gz && cd googletest-release-1.8.1 && \ + cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/usr/local/gtest . && make -j && make install && \ + cd .. && rm -rf release-1.8.1.tar.gz googletest-release-1.8.1 ARG BASE_VERSION:v1.0 ARG BASE=ascendbase-infer:$BASE_VERSION ARG CHIP=all WORKDIR /tmp -ARG ASCEND_BASE=/home/HwHiAiUser/ascendbase +ARG ASCEND_BASE=/home/HwHiAiUser/Ascend ARG TOOLKIT_PKG=Ascend-cann-toolkit*_linux${ARCH}.run ARG TOOLKIT_PATH=$ASCEND_BASE/ascend-toolkit/latest -RUN gpoupadd HwHiAiUser && useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash +RUN groupadd HwHiAiUser && useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash COPY --chown=HwHiAiUser:HwHiAiUser $TOOLKIT_PKG ./ USER HwHiAiUser:HwHiAiUser -RUN chmod + $TOOLKIT_PKG && \ - ./$TOOLKIT_PKG --quit --full --install-path=$ASCEND_BASE --install-for-all &&\ +RUN chmod +x $TOOLKIT_PKG && \ + ./$TOOLKIT_PKG --quiet --full --install-path=$ASCEND_BASE --install-for-all &&\ rm -f $TOOLKIT_PKG ENV GLOG_v=2 @@ -88,9 +100,9 @@ ENV ASCEND_AICPU_PATH=$TOOLKIT_PATH ENV PYTHONPATH=$TBE_IMPL_PATH:$PYTHONPATH COPY --chown=HwHiAiUser:HwHiAiUser ./Ascend-mindxsdk-mxindex*_linux-${ARCH}.run ./ -RUN bash Ascend-mindxsdk-mxindex*_linux-${ARCH}.run --quit --install --install_path=/home/HwHiAiUser/Ascend/ --platform=${PLATFORM} +RUN bash Ascend-mindxsdk-mxindex*_linux-${ARCH}.run --quiet --install --install-path=/home/HwHiAiUser/Ascend/ --platform=${PLATFORM} ENV MX_INDEX_MODELPATH=/home/HwHiAiUser/Ascend/modelpath -RUN cd /home/HwHiAiUser/Ascend/mxIndex/ops && ./custom_opp_${arch}.run && mkdir -p ${MX_INDEX_MODELPATH} +RUN cd /home/HwHiAiUser/Ascend/mxIndex/ops && ./custom_opp_${ARCH}.run && mkdir -p ${MX_INDEX_MODELPATH} ENV ASCEND_HOME=/home/HwHiAiUser/Ascend/ USER root @@ -98,7 +110,7 @@ RUN rm -rf ./* USER HwHiAiUser:HwHiAiUser RUN touch /home/HwHiAiUser/.vimrc && \ - echo 'set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936' >> /home/HwHiAiUser/.vimrc && | + echo 'set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936' >> /home/HwHiAiUser/.vimrc && \ sed -i '$a\set termencoding=utf-8' /home/HwHiAiUser/vimrc && \ sed -i '$a\set encoding=utf-8' /home/HwHiAiUser/.vimrc -- Gitee From 33afa35dd39ce40e3c0d23d85ceb12e16f0bb03d Mon Sep 17 00:00:00 2001 From: cord <1139172570@qq.com> Date: Tue, 1 Jul 2025 17:06:27 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E8=93=9D=E5=8C=BA=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IndexSDK/Dockerfile/Dockerfile | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/IndexSDK/Dockerfile/Dockerfile b/IndexSDK/Dockerfile/Dockerfile index 05fcf4ea1..2e2ffb5c0 100644 --- a/IndexSDK/Dockerfile/Dockerfile +++ b/IndexSDK/Dockerfile/Dockerfile @@ -44,7 +44,7 @@ RUN pip3.9 install -U pip && \ rm -rf /root/.cache/pip # 安装cmake -RUN wget https://github.com/Kitware/CMake/releases/download/v3.24.0/cmkae-3.24.0.tar.gz && \ +RUN wget https://github.com/Kitware/CMake/releases/download/v3.24.0/cmake-3.24.0.tar.gz && \ tar xf cmake-3.24.0.tar.gz && cd cmake-3.24.0 && ./configure --prefix=/usr && \ make -j && make -j install && cd .. && rm -rf cmake-3.24.0* @@ -57,12 +57,12 @@ RUN wget https://github.com/xianyi/OpenBLAS/archive/v0.3.10.tar.gz -O OpenBLAS-0 cd .. && rm -f OpenBLAS-0.3.10.tar.gz && rm -rf OpenBLAS-0.3.10 ARG install_path=/usr/local/faiss/faiss1.10.0 -RUN wget https:/github.com/facebookresearch/faiss/archive/v1.10.0.tar.gz -O faiss-1.10.0.tar.gz && \ +RUN wget https://github.com/facebookresearch/faiss/archive/v1.10.0.tar.gz -O faiss-1.10.0.tar.gz && \ tar -xf faiss-1.10.0.tar.gz && cd faiss-1.10.0/faiss && \ sed -i "131 i virtual void search_with_filter (idx_t n, const float *x, idx_t k, float *distances, idx_t *labels, const void *mask = nullptr) const {}" Index.h && \ sed -i "38 i template IndexIDMapTemplate::IndexIDMapTemplate (IndexT *index, std::vector &ids): index (index), own_fields (false) {this->is_trained = index->is_trained; this->metric_type = index->metric_type; this->verbose = index->verbose; this->d = index->d; id_map = ids;}" IndexIDMap.cpp &&\ sed -i "29 i explicit IndexIDMapTemplate (IndexT *index, std::vector &ids); " IndexIDMap.h &&\ - sed -i "199 i utils/sorting.h" CMakeList.txt && \ + sed -i "199 i utils/sorting.h" CMakeLists.txt && \ cd .. && \ cmake -B build . -DFAISS_ENABLE_GPU=OFF -DFAISS_ENABLE_PYTHON=OFF -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${install_path} && \ cd build && make -j && make install && \ @@ -76,6 +76,9 @@ RUN wget https://github.com/google/googletest/archive/refs/tags/release-1.8.1.ta cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/usr/local/gtest . && make -j && make install && \ cd .. && rm -rf release-1.8.1.tar.gz googletest-release-1.8.1 +# 清理临时目录 +RUN rm -ef ./* + ARG BASE_VERSION:v1.0 ARG BASE=ascendbase-infer:$BASE_VERSION ARG CHIP=all @@ -111,7 +114,7 @@ RUN rm -rf ./* USER HwHiAiUser:HwHiAiUser RUN touch /home/HwHiAiUser/.vimrc && \ echo 'set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936' >> /home/HwHiAiUser/.vimrc && \ - sed -i '$a\set termencoding=utf-8' /home/HwHiAiUser/vimrc && \ + sed -i '$a\set termencoding=utf-8' /home/HwHiAiUser/.vimrc && \ sed -i '$a\set encoding=utf-8' /home/HwHiAiUser/.vimrc WORKDIR /home/HwHiAiUser -- Gitee From e9467eae607f94297aad61b1d5b4c126802cbee5 Mon Sep 17 00:00:00 2001 From: cord <1139172570@qq.com> Date: Tue, 1 Jul 2025 17:16:18 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E8=93=9D=E5=8C=BA=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IndexSDK/Dockerfile/Dockerfile | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/IndexSDK/Dockerfile/Dockerfile b/IndexSDK/Dockerfile/Dockerfile index 2e2ffb5c0..0d23da6d4 100644 --- a/IndexSDK/Dockerfile/Dockerfile +++ b/IndexSDK/Dockerfile/Dockerfile @@ -4,6 +4,9 @@ ARG ARCH=x86_64 ARG PLATFORM=310P RUN chmod 777 /tmp # 系统包 + Pip3.9 +RUN cp -a /etc/apt/source.list /etc/apt/sources.list.bak && \ + sed -i "s@http://.*archive.ubuntu.com@http://mirrors.huaweicloud.com@g" /etc/apt/sources/list && \ + sed -i "s@http://.*security.ubuntu.com@http://mirrors.huaweicloud.com@g" /etc/apt/sources.list RUN apt update && \ apt install --no-install-recommends ca-certificates -y && \ apt install --no-install-recommends wget vim dos2unix net-tools ssh lsof sshpass -y && \ @@ -13,7 +16,7 @@ RUN apt update && \ apt install --no-install-recommends zlib1g-dev xz-utils libgmpxx4ldbl -y && \ apt clean && rm -rf /var/lib/apt/lists/* # 安装Python -RUN wget https://repo.huaweicloud.com/python/3.9.11/Python-3.9.11.tar.xz && \ +RUN wget https://repo.huaweicloud.com/python/3.9.11/Python-3.9.11.tar.xz && \ tar -xf Python-3.9.11.tar.xz && \ cd Python-3.9.11 && \ mkdir build && cd build && \ @@ -48,7 +51,7 @@ RUN wget https://github.com/Kitware/CMake/releases/download/v3.24.0/cmake-3.24.0 tar xf cmake-3.24.0.tar.gz && cd cmake-3.24.0 && ./configure --prefix=/usr && \ make -j && make -j install && cd .. && rm -rf cmake-3.24.0* -RUN wget https://github.com/xianyi/OpenBLAS/archive/v0.3.10.tar.gz -O OpenBLAS-0.3.10.tar.gz &&\ +RUN wget https://github.com/xianyi/OpenBLAS/archive/v0.3.10.tar.gz -O OpenBLAS-0.3.10.tar.gz && \ tar -xf OpenBLAS-0.3.10.tar.gz && \ cd OpenBLAS-0.3.10 && \ make FC=gfortran USE_OPENMP=1 -j && \ @@ -60,9 +63,9 @@ ARG install_path=/usr/local/faiss/faiss1.10.0 RUN wget https://github.com/facebookresearch/faiss/archive/v1.10.0.tar.gz -O faiss-1.10.0.tar.gz && \ tar -xf faiss-1.10.0.tar.gz && cd faiss-1.10.0/faiss && \ sed -i "131 i virtual void search_with_filter (idx_t n, const float *x, idx_t k, float *distances, idx_t *labels, const void *mask = nullptr) const {}" Index.h && \ - sed -i "38 i template IndexIDMapTemplate::IndexIDMapTemplate (IndexT *index, std::vector &ids): index (index), own_fields (false) {this->is_trained = index->is_trained; this->metric_type = index->metric_type; this->verbose = index->verbose; this->d = index->d; id_map = ids;}" IndexIDMap.cpp &&\ + sed -i "38 i template IndexIDMapTemplate::IndexIDMapTemplate (IndexT *index, std::vector &ids): index (index), own_fields (false) {this->is_trained = index->is_trained; this->metric_type = index->metric_type; this->verbose = index->verbose; this->d = index->d; id_map = ids;}" IndexIDMap.cpp && \ sed -i "29 i explicit IndexIDMapTemplate (IndexT *index, std::vector &ids); " IndexIDMap.h &&\ - sed -i "199 i utils/sorting.h" CMakeLists.txt && \ + sed -i "199 i utils/sorting.h" CMakeLists.txt &&\ cd .. && \ cmake -B build . -DFAISS_ENABLE_GPU=OFF -DFAISS_ENABLE_PYTHON=OFF -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${install_path} && \ cd build && make -j && make install && \ @@ -77,21 +80,21 @@ RUN wget https://github.com/google/googletest/archive/refs/tags/release-1.8.1.ta cd .. && rm -rf release-1.8.1.tar.gz googletest-release-1.8.1 # 清理临时目录 -RUN rm -ef ./* +RUN rm -rf ./* ARG BASE_VERSION:v1.0 ARG BASE=ascendbase-infer:$BASE_VERSION ARG CHIP=all WORKDIR /tmp ARG ASCEND_BASE=/home/HwHiAiUser/Ascend -ARG TOOLKIT_PKG=Ascend-cann-toolkit*_linux${ARCH}.run +ARG TOOLKIT_PKG=Ascend-cann-toolkit*_linux-${ARCH}.run ARG TOOLKIT_PATH=$ASCEND_BASE/ascend-toolkit/latest RUN groupadd HwHiAiUser && useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash COPY --chown=HwHiAiUser:HwHiAiUser $TOOLKIT_PKG ./ USER HwHiAiUser:HwHiAiUser RUN chmod +x $TOOLKIT_PKG && \ - ./$TOOLKIT_PKG --quiet --full --install-path=$ASCEND_BASE --install-for-all &&\ + ./$TOOLKIT_PKG --quiet --full --install-path=$ASCEND_BASE --install-for-all && \ rm -f $TOOLKIT_PKG ENV GLOG_v=2 -- Gitee From e56a69bca9885ffda5063152183403d88b9f818b Mon Sep 17 00:00:00 2001 From: cord <1139172570@qq.com> Date: Tue, 1 Jul 2025 17:29:44 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E8=93=9D=E5=8C=BA=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IndexSDK/Dockerfile/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/IndexSDK/Dockerfile/Dockerfile b/IndexSDK/Dockerfile/Dockerfile index 0d23da6d4..27d33b121 100644 --- a/IndexSDK/Dockerfile/Dockerfile +++ b/IndexSDK/Dockerfile/Dockerfile @@ -4,8 +4,8 @@ ARG ARCH=x86_64 ARG PLATFORM=310P RUN chmod 777 /tmp # 系统包 + Pip3.9 -RUN cp -a /etc/apt/source.list /etc/apt/sources.list.bak && \ - sed -i "s@http://.*archive.ubuntu.com@http://mirrors.huaweicloud.com@g" /etc/apt/sources/list && \ +RUN cp -a /etc/apt/sources.list /etc/apt/sources.list.bak && \ + sed -i "s@http://.*archive.ubuntu.com@http://mirrors.huaweicloud.com@g" /etc/apt/sources.list && \ sed -i "s@http://.*security.ubuntu.com@http://mirrors.huaweicloud.com@g" /etc/apt/sources.list RUN apt update && \ apt install --no-install-recommends ca-certificates -y && \ -- Gitee From e5872d28ebd677c165e285f8d8566b68a4ae7166 Mon Sep 17 00:00:00 2001 From: cord <1139172570@qq.com> Date: Wed, 2 Jul 2025 10:09:30 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E8=93=9D=E5=8C=BA=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IndexSDK/Dockerfile/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/IndexSDK/Dockerfile/Dockerfile b/IndexSDK/Dockerfile/Dockerfile index 27d33b121..e37f69bf4 100644 --- a/IndexSDK/Dockerfile/Dockerfile +++ b/IndexSDK/Dockerfile/Dockerfile @@ -1,6 +1,6 @@ FROM ubuntu:18.04 WORKDIR /tmp -ARG ARCH=x86_64 +ARG ARCH=aarch64 ARG PLATFORM=310P RUN chmod 777 /tmp # 系统包 + Pip3.9 -- Gitee