add conda, move docker and conda scripts

This commit is contained in:
yanghaoran 2021-09-12 18:05:17 +08:00
parent dbfcbae190
commit afe7899de4
50 changed files with 699 additions and 0 deletions

View File

@ -1,4 +1,6 @@
approvers:
- zhoufeng54
- jjfeing
- kisnwang
reviewers:
- HW_KK

15
scripts/conda/README.md Normal file
View File

@ -0,0 +1,15 @@
## MindSpore Conda build file Repository
This folder hosts all files relating to building conda packages, to download existing conda packages, simply typing
conda install -c mindspore mindspore-{platform}
in conda environments, whereby {platform} refers to hardware platform supported by MindSpore, including CPU, GPU and Ascend
### MindSpore conda install command
| Hardware Platform | Version | Download Command |
| :---------------- | :------ | :------------ |
| Ascend | `x.y.z` | conda install -c mindspore mindspore-ascend=x.y.z |
| CPU | `x.y.z` | conda install -c mindspore mindspore-cpu=x.y.z |
| GPU | `x.y.z` | conda install -c mindspore mindspore-gpu=x.y.z |
> **NOTICE:** The `x.y.z` version shown above should be replaced with the real version number.

View File

@ -0,0 +1,31 @@
#!/bin/bash
# install MindSpore-Ascend using pip
if [ "$(uname)" == Linux ]; then
if [ "$(arch)" == aarch64 ]; then
echo "running on aarch64 linux system."
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.3.0/MindSpore/ascend/aarch64/mindspore_ascend-1.3.0-cp37-cp37m-linux_aarch64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
elif [ "$(arch)" == x86_64 ]; then
echo "running on x86_64 linux system."
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.3.0/MindSpore/ascend/x86_64/mindspore_ascend-1.3.0-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
else
echo "ERROR: unknown linux architecture, try building MindSpore conda package on a supported architecture."
exit 1
fi
fi

View File

@ -0,0 +1,30 @@
package:
name: mindspore-ascend
version: "1.3.0"
build:
number: 0
requirements:
build:
- python
- pip
run:
- python
- numpy >=1.17.0
- protobuf >=3.13.0
- asttokens >=1.1.13
- pillow >=6.2.0
- scipy >=1.5.2
- cffi >=1.12.3
- wheel >=0.32.0
- decorator >=4.4.0
- setuptools >=40.8.0
- astunparse >=1.6.3
- packaging >=20.0
- psutil >=5.7.0
about:
home: https://www.mindspore.cn/
license: Apache 2.0
summary: MindSpore is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios.

View File

@ -0,0 +1,33 @@
#!/bin/bash
# install MindSpore-Ascend using pip
if [ "$(uname)" == Linux ]; then
if [ "$(arch)" == aarch64 ]; then
echo "running on aarch64 linux system."
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/ascend/aarch64/mindspore_ascend-1.5.0-cp37-cp37m-linux_aarch64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/ascend/aarch64/mindspore_ascend-1.5.0-cp39-cp39-linux_aarch64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
elif [ "$(arch)" == x86_64 ]; then
echo "running on x86_64 linux system."
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/ascend/x86_64/mindspore_ascend-1.5.0-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/ascend/x86_64/mindspore_ascend-1.5.0-cp39-cp39-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
else
echo "ERROR: unknown linux architecture, try building MindSpore conda package on a supported architecture."
exit 1
fi
fi

View File

@ -0,0 +1,30 @@
package:
name: mindspore-ascend
version: "1.5.0"
build:
number: 0
requirements:
build:
- python
- pip
run:
- python
- numpy >=1.17.0
- protobuf >=3.13.0
- asttokens >=1.1.13
- pillow >=6.2.0
- scipy >=1.5.2
- cffi >=1.12.3
- wheel >=0.32.0
- decorator >=4.4.0
- setuptools >=40.8.0
- astunparse >=1.6.3
- packaging >=20.0
- psutil >=5.7.0
about:
home: https://www.mindspore.cn/
license: Apache 2.0
summary: MindSpore is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios.

View File

@ -0,0 +1,13 @@
@rem install MindSpore-CPU for windows using pip
@echo off
IF "%PY_VER%" == "3.7" (
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.3.0/MindSpore/cpu/x86_64/mindspore-1.3.0-cp37-cp37m-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
) ELSE IF "%PY_VER%" == "3.9" (
echo "building conda package for python3.9, which is not supported on MindSpore 1.3.0"
EXIT /b 1
) ELSE (
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
EXIT /b 1
)

View File

@ -0,0 +1,31 @@
#!/bin/bash
# install MindSpore-CPU using pip
if [ "$(uname)" == Linux ]; then
if [ "$(arch)" == aarch64 ]; then
echo "running on aarch64 linux system."
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.3.0/MindSpore/cpu/aarch64/mindspore-1.3.0-cp37-cp37m-linux_aarch64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
elif [ "$(arch)" == x86_64 ]; then
echo "running on x86_64 linux system."
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.3.0/MindSpore/cpu/x86_64/mindspore-1.3.0-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
else
echo "ERROR: unknown linux architecture, try building MindSpore conda package on a supported architecture."
exit 1
fi
fi

View File

@ -0,0 +1,30 @@
package:
name: mindspore-cpu
version: "1.3.0"
build:
number: 0
requirements:
build:
- python
- pip
run:
- python
- numpy >=1.17.0
- protobuf >=3.13.0
- asttokens >=1.1.13
- pillow >=6.2.0
- scipy >=1.5.2
- cffi >=1.12.3
- wheel >=0.32.0
- decorator >=4.4.0
- setuptools >=40.8.0
- astunparse >=1.6.3
- packaging >=20.0
- psutil >=5.7.0
about:
home: https://www.mindspore.cn/
license: Apache 2.0
summary: MindSpore is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios.

View File

@ -0,0 +1,13 @@
@rem install MindSpore-CPU for windows using pip
@echo off
IF "%PY_VER%" == "3.7" (
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp37-cp37m-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
) ELSE IF "%PY_VER%" == "3.9" (
echo "building conda package for python3.9"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp39-cp39-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
) ELSE (
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
EXIT /b 1
)

View File

@ -0,0 +1,42 @@
#!/bin/bash
# install MindSpore-CPU using pip
if [ "$(uname)" == Darwin ]; then
if [ "$PY_VER" == "3.7" ]; then
echo "nothing happens yet"
else
echo "nothing happens yet"
fi
fi
if [ "$(uname)" == Linux ]; then
if [ "$(arch)" == aarch64 ]; then
echo "running on aarch64 linux system."
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/aarch64/mindspore-1.5.0-cp37-cp37m-linux_aarch64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/aarch64/mindspore-1.5.0-cp39-cp39-linux_aarch64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
elif [ "$(arch)" == x86_64 ]; then
echo "running on x86_64 linux system."
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp39-cp39-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
else
echo "ERROR: unknown linux architecture, try building MindSpore conda package on a supported architecture."
exit 1
fi
fi

View File

@ -0,0 +1,30 @@
package:
name: mindspore-cpu
version: "1.5.0"
build:
number: 0
requirements:
build:
- python
- pip
run:
- python
- numpy >=1.17.0
- protobuf >=3.13.0
- asttokens >=1.1.13
- pillow >=6.2.0
- scipy >=1.5.2
- cffi >=1.12.3
- wheel >=0.32.0
- decorator >=4.4.0
- setuptools >=40.8.0
- astunparse >=1.6.3
- packaging >=20.0
- psutil >=5.7.0
about:
home: https://www.mindspore.cn/
license: Apache 2.0
summary: MindSpore is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios.

View File

@ -0,0 +1,14 @@
#!/bin/bash
# install MindSpore-GPU using pip
if [ "$(uname)" == Linux ]; then
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.3.0/MindSpore/gpu/x86_64/cuda-11.1/mindspore_gpu-1.3.0-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
fi

View File

@ -0,0 +1,30 @@
package:
name: mindspore-gpu
version: "1.3.0"
build:
number: 0
requirements:
build:
- python
- pip
run:
- python
- numpy >=1.17.0
- protobuf >=3.13.0
- asttokens >=1.1.13
- pillow >=6.2.0
- scipy >=1.5.2
- cffi >=1.12.3
- wheel >=0.32.0
- decorator >=4.4.0
- setuptools >=40.8.0
- astunparse >=1.6.3
- packaging >=20.0
- psutil >=5.7.0
about:
home: https://www.mindspore.cn/
license: Apache 2.0
summary: MindSpore is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios.

View File

@ -0,0 +1,15 @@
#!/bin/bash
# install MindSpore-GPU using pip
if [ "$(uname)" == Linux ]; then
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/gpu/x86_64/cuda-10.1/mindspore_gpu-1.5.0-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/gpu/x86_64/cuda-10.1/mindspore_gpu-1.5.0-cp39-cp39-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
fi

View File

@ -0,0 +1,32 @@
package:
name: mindspore-gpu
version: "1.5.0"
build:
number: 0
string: cuda10.1
requirements:
build:
- python
- pip
run:
- python
- numpy >=1.17.0
- protobuf >=3.13.0
- asttokens >=1.1.13
- pillow >=6.2.0
- scipy >=1.5.2
- cffi >=1.12.3
- wheel >=0.32.0
- decorator >=4.4.0
- setuptools >=40.8.0
- astunparse >=1.6.3
- packaging >=20.0
- psutil >=5.7.0
- cudatoolkit >=10.1, <10.2
about:
home: https://www.mindspore.cn/
license: Apache 2.0
summary: MindSpore is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios.

View File

@ -0,0 +1,15 @@
#!/bin/bash
# install MindSpore-GPU using pip
if [ "$(uname)" == Linux ]; then
if [ "$PY_VER" == "3.7" ]; then
echo "building conda package for python3.7"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/gpu/x86_64/cuda-11.1/mindspore_gpu-1.5.0-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
elif [ "$PY_VER" == "3.9" ]; then
echo "building conda package for python3.9"
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/gpu/x86_64/cuda-11.1/mindspore_gpu-1.5.0-cp39-cp39-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
else
echo "ERROR: you are trying to build MindSpore conda package on a unsupported python environment, try python 3.7 or 3.9"
exit 1
fi
fi

View File

@ -0,0 +1,32 @@
package:
name: mindspore-gpu
version: "1.5.0"
build:
number: 0
string: cuda11.1
requirements:
build:
- python
- pip
run:
- python
- numpy >=1.17.0
- protobuf >=3.13.0
- asttokens >=1.1.13
- pillow >=6.2.0
- scipy >=1.5.2
- cffi >=1.12.3
- wheel >=0.32.0
- decorator >=4.4.0
- setuptools >=40.8.0
- astunparse >=1.6.3
- packaging >=20.0
- psutil >=5.7.0
- cudatoolkit >=11.1, <11.2
about:
home: https://www.mindspore.cn/
license: Apache 2.0
summary: MindSpore is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios.

7
scripts/docker/OWNERS Normal file
View File

@ -0,0 +1,7 @@
approvers:
reviewers:
- zhoufeng54
- jjfeing
- kisnwang
reviewers:
- HW_KK

View File

@ -0,0 +1,74 @@
FROM ubuntu:18.04
MAINTAINER leonwanghui <leon.wanghui@huawei.com>
# Set env
ENV PYTHON_ROOT_PATH /usr/local/python-3.7.5
ENV PATH /usr/local/bin:/root/.local/bin:$PATH
# Install base tools
RUN apt update \
&& DEBIAN_FRONTEND=noninteractive apt install -y \
vim \
wget \
curl \
xz-utils \
net-tools \
openssh-client \
git \
ntpdate \
tzdata \
tcl \
sudo \
bash-completion
# Install compile tools
RUN DEBIAN_FRONTEND=noninteractive apt install -y \
gcc \
g++ \
zlibc \
make \
libgmp-dev \
patch \
autoconf \
libtool \
automake \
flex
# Install the rest dependent tools
RUN DEBIAN_FRONTEND=noninteractive apt install -y \
libnuma-dev
# Set bash
RUN echo "dash dash/sh boolean false" | debconf-set-selections
RUN DEBIAN_FRONTEND=noninteractive dpkg-reconfigure dash
# Install python (v3.7.5)
RUN apt install -y libffi-dev libssl-dev zlib1g-dev libbz2-dev libncurses5-dev \
libgdbm-dev libgdbm-compat-dev liblzma-dev libreadline-dev libsqlite3-dev \
&& cd /tmp \
&& wget https://github.com/python/cpython/archive/v3.7.5.tar.gz \
&& tar -xvf v3.7.5.tar.gz \
&& cd /tmp/cpython-3.7.5 \
&& mkdir -p ${PYTHON_ROOT_PATH} \
&& ./configure --prefix=${PYTHON_ROOT_PATH} --enable-shared \
&& make -j4 \
&& make install -j4 \
&& rm -f /usr/local/bin/python \
&& rm -f /usr/local/bin/pip \
&& rm -f /usr/local/lib/libpython3.7m.so.1.0 \
&& ln -s ${PYTHON_ROOT_PATH}/bin/python3.7 /usr/local/bin/python \
&& ln -s ${PYTHON_ROOT_PATH}/bin/pip3.7 /usr/local/bin/pip \
&& ln -s ${PYTHON_ROOT_PATH}/lib/libpython3.7m.so.1.0 /usr/local/lib/libpython3.7m.so.1.0 \
&& ldconfig \
&& rm -rf /tmp/cpython-3.7.5 \
&& rm -f /tmp/v3.7.5.tar.gz
# Set pip source
RUN mkdir -pv /root/.pip \
&& echo "[global]" > /root/.pip/pip.conf \
&& echo "trusted-host=mirrors.aliyun.com" >> /root/.pip/pip.conf \
&& echo "index-url=http://mirrors.aliyun.com/pypi/simple/" >> /root/.pip/pip.conf
# Install MindSpore cpu whl package
RUN pip install --no-cache-dir https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp37-cp37m-linux_x86_64.whl

View File

@ -0,0 +1,90 @@
FROM nvidia/cuda:10.1-cudnn7-devel-ubuntu18.04
MAINTAINER leonwanghui <leon.wanghui@huawei.com>
# Set env
ENV PYTHON_ROOT_PATH /usr/local/python-3.7.5
ENV OMPI_ROOT_PATH /usr/local/openmpi-4.0.3
ENV PATH ${PYTHON_ROOT_PATH}/bin:${OMPI_ROOT_PATH}/bin:/usr/local/bin:$PATH
ENV LD_LIBRARY_PATH ${OMPI_ROOT_PATH}/lib:$LD_LIBRARY_PATH
# Install base tools
RUN apt update \
&& DEBIAN_FRONTEND=noninteractive apt install -y \
vim \
wget \
curl \
xz-utils \
net-tools \
openssh-client \
git \
ntpdate \
tzdata \
tcl \
sudo \
bash-completion
# Install compile tools
RUN DEBIAN_FRONTEND=noninteractive apt install -y \
gcc \
g++ \
zlibc \
make \
libgmp-dev \
patch \
autoconf \
libtool \
automake \
flex
# Install the rest dependent tools
RUN DEBIAN_FRONTEND=noninteractive apt install -y \
libnuma-dev
# Set bash
RUN echo "dash dash/sh boolean false" | debconf-set-selections
RUN DEBIAN_FRONTEND=noninteractive dpkg-reconfigure dash
# Install python (v3.7.5)
RUN apt install -y libffi-dev libssl-dev zlib1g-dev libbz2-dev libncurses5-dev \
libgdbm-dev libgdbm-compat-dev liblzma-dev libreadline-dev libsqlite3-dev \
&& cd /tmp \
&& wget https://github.com/python/cpython/archive/v3.7.5.tar.gz \
&& tar -xvf v3.7.5.tar.gz \
&& cd /tmp/cpython-3.7.5 \
&& mkdir -p ${PYTHON_ROOT_PATH} \
&& ./configure --prefix=${PYTHON_ROOT_PATH} --enable-shared \
&& make -j4 \
&& make install -j4 \
&& rm -f /usr/local/bin/python \
&& rm -f /usr/local/bin/pip \
&& rm -f /usr/local/lib/libpython3.7m.so.1.0 \
&& ln -s ${PYTHON_ROOT_PATH}/bin/python3.7 /usr/local/bin/python \
&& ln -s ${PYTHON_ROOT_PATH}/bin/pip3.7 /usr/local/bin/pip \
&& ln -s ${PYTHON_ROOT_PATH}/lib/libpython3.7m.so.1.0 /usr/local/lib/libpython3.7m.so.1.0 \
&& ldconfig \
&& rm -rf /tmp/cpython-3.7.5 \
&& rm -f /tmp/v3.7.5.tar.gz
# Set pip source
RUN mkdir -pv /root/.pip \
&& echo "[global]" > /root/.pip/pip.conf \
&& echo "trusted-host=mirrors.aliyun.com" >> /root/.pip/pip.conf \
&& echo "index-url=http://mirrors.aliyun.com/pypi/simple/" >> /root/.pip/pip.conf
# Install openmpi (v4.0.3)
RUN cd /tmp \
&& wget https://download.open-mpi.org/release/open-mpi/v4.0/openmpi-4.0.3.tar.gz \
&& tar -xvf openmpi-4.0.3.tar.gz \
&& cd /tmp/openmpi-4.0.3 \
&& mkdir -p ${OMPI_ROOT_PATH} \
&& ./configure --prefix=${OMPI_ROOT_PATH} \
&& make -j4 \
&& make install -j4 \
&& rm -rf /tmp/openmpi-4.0.3 \
&& rm -f /tmp/openmpi-4.0.3.tar.gz
# Install MindSpore cuda-10.1, MindInsight, Serving whl package
RUN pip install --no-cache-dir https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/gpu/x86_64/cuda-10.1/mindspore_gpu-1.5.0-cp37-cp37m-linux_x86_64.whl \
&& pip install --no-cache-dir https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindInsight/any/mindinsight-1.5.0-py3-none-any.whl \
&& pip install --no-cache-dir https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/Serving/x86_64/mindspore_serving-1.5.0-cp37-cp37m-linux_x86_64.whl

View File

@ -0,0 +1,90 @@
FROM nvidia/cuda:11.1-cudnn8-devel-ubuntu18.04
MAINTAINER leonwanghui <leon.wanghui@huawei.com>
# Set env
ENV PYTHON_ROOT_PATH /usr/local/python-3.7.5
ENV OMPI_ROOT_PATH /usr/local/openmpi-4.0.3
ENV PATH ${PYTHON_ROOT_PATH}/bin:${OMPI_ROOT_PATH}/bin:/usr/local/bin:$PATH
ENV LD_LIBRARY_PATH ${OMPI_ROOT_PATH}/lib:$LD_LIBRARY_PATH
# Install base tools
RUN apt update \
&& DEBIAN_FRONTEND=noninteractive apt install -y \
vim \
wget \
curl \
xz-utils \
net-tools \
openssh-client \
git \
ntpdate \
tzdata \
tcl \
sudo \
bash-completion
# Install compile tools
RUN DEBIAN_FRONTEND=noninteractive apt install -y \
gcc \
g++ \
zlibc \
make \
libgmp-dev \
patch \
autoconf \
libtool \
automake \
flex
# Install the rest dependent tools
RUN DEBIAN_FRONTEND=noninteractive apt install -y \
libnuma-dev
# Set bash
RUN echo "dash dash/sh boolean false" | debconf-set-selections
RUN DEBIAN_FRONTEND=noninteractive dpkg-reconfigure dash
# Install python (v3.7.5)
RUN apt install -y libffi-dev libssl-dev zlib1g-dev libbz2-dev libncurses5-dev \
libgdbm-dev libgdbm-compat-dev liblzma-dev libreadline-dev libsqlite3-dev \
&& cd /tmp \
&& wget https://github.com/python/cpython/archive/v3.7.5.tar.gz \
&& tar -xvf v3.7.5.tar.gz \
&& cd /tmp/cpython-3.7.5 \
&& mkdir -p ${PYTHON_ROOT_PATH} \
&& ./configure --prefix=${PYTHON_ROOT_PATH} --enable-shared \
&& make -j4 \
&& make install -j4 \
&& rm -f /usr/local/bin/python \
&& rm -f /usr/local/bin/pip \
&& rm -f /usr/local/lib/libpython3.7m.so.1.0 \
&& ln -s ${PYTHON_ROOT_PATH}/bin/python3.7 /usr/local/bin/python \
&& ln -s ${PYTHON_ROOT_PATH}/bin/pip3.7 /usr/local/bin/pip \
&& ln -s ${PYTHON_ROOT_PATH}/lib/libpython3.7m.so.1.0 /usr/local/lib/libpython3.7m.so.1.0 \
&& ldconfig \
&& rm -rf /tmp/cpython-3.7.5 \
&& rm -f /tmp/v3.7.5.tar.gz
# Set pip source
RUN mkdir -pv /root/.pip \
&& echo "[global]" > /root/.pip/pip.conf \
&& echo "trusted-host=mirrors.aliyun.com" >> /root/.pip/pip.conf \
&& echo "index-url=http://mirrors.aliyun.com/pypi/simple/" >> /root/.pip/pip.conf
# Install openmpi (v4.0.3)
RUN cd /tmp \
&& wget https://download.open-mpi.org/release/open-mpi/v4.0/openmpi-4.0.3.tar.gz \
&& tar -xvf openmpi-4.0.3.tar.gz \
&& cd /tmp/openmpi-4.0.3 \
&& mkdir -p ${OMPI_ROOT_PATH} \
&& ./configure --prefix=${OMPI_ROOT_PATH} \
&& make -j4 \
&& make install -j4 \
&& rm -rf /tmp/openmpi-4.0.3 \
&& rm -f /tmp/openmpi-4.0.3.tar.gz
# Install MindSpore cuda-11.1, MindInsight, Serving whl package
RUN pip install --no-cache-dir https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/gpu/x86_64/cuda-11.1/mindspore_gpu-1.5.0-cp37-cp37m-linux_x86_64.whl \
&& pip install --no-cache-dir https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindInsight/any/mindinsight-1.5.0-py3-none-any.whl \
&& pip install --no-cache-dir https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/Serving/x86_64/mindspore_serving-1.5.0-cp37-cp37m-linux_x86_64.whl