mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-07-03 03:58:54 +00:00
clean up ubuntu docker scripts (#2103)
This commit is contained in:
parent
9363c14d23
commit
5558b80774
4 changed files with 28 additions and 35 deletions
0
tools/ci_build/github/linux/copy_strip_binary.sh
Normal file → Executable file
0
tools/ci_build/github/linux/copy_strip_binary.sh
Normal file → Executable file
|
|
@ -5,10 +5,9 @@
|
|||
FROM nvcr.io/nvidia/tensorrt:19.09-py3
|
||||
|
||||
ARG PYTHON_VERSION=3.6
|
||||
ARG OS_VERSION=18.04
|
||||
|
||||
ADD scripts /tmp/scripts
|
||||
RUN /tmp/scripts/install_ubuntu.sh -p $PYTHON_VERSION -o ${OS_VERSION} && /tmp/scripts/install_deps.sh -p $PYTHON_VERSION && rm -rf /tmp/scripts \
|
||||
RUN /tmp/scripts/install_ubuntu.sh -p $PYTHON_VERSION && /tmp/scripts/install_deps.sh -p $PYTHON_VERSION && rm -rf /tmp/scripts \
|
||||
&& rm /usr/local/bin/cmake && rm /usr/local/bin/ctest && rm -r /usr/local/share/cmake-3.12
|
||||
|
||||
WORKDIR /root
|
||||
|
|
|
|||
|
|
@ -1,26 +1,28 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
while getopts p:d:o: parameter_Option
|
||||
while getopts p:d: parameter_Option
|
||||
do case "${parameter_Option}"
|
||||
in
|
||||
p) PYTHON_VER=${OPTARG};;
|
||||
d) DEVICE_TYPE=${OPTARG};;
|
||||
o) OS_VERSION=${OPTARG};;
|
||||
esac
|
||||
done
|
||||
|
||||
PYTHON_VER=${PYTHON_VER:=3.5}
|
||||
# Some Edge devices only have limited disk space, use this option to exclude some package
|
||||
DEVICE_TYPE=${DEVICE_TYPE:=Normal}
|
||||
OS_VERSION=${OS_VERSION:=16.04}
|
||||
|
||||
apt-get update && apt-get install -y software-properties-common lsb-release
|
||||
|
||||
|
||||
OS_VERSION=$(lsb_release -r -s)
|
||||
DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
SYS_LONG_BIT=$(getconf LONG_BIT)
|
||||
|
||||
apt-get update && apt-get install -y software-properties-common
|
||||
add-apt-repository ppa:deadsnakes/ppa
|
||||
|
||||
if [ $OS_VERSION = "16.04" ]; then
|
||||
#see: https://docs.microsoft.com/en-us/dotnet/core/linux-prerequisites?tabs=netcore21
|
||||
if [ "$OS_VERSION" = "16.04" ]; then
|
||||
PACKAGE_LIST="autotools-dev \
|
||||
automake \
|
||||
build-essential \
|
||||
|
|
@ -53,7 +55,6 @@ if [ $OS_VERSION = "16.04" ]; then
|
|||
python3-setuptools python3-numpy python3-wheel python python3-pip python3-pytest \
|
||||
libprotobuf-dev libprotobuf9v5 protobuf-compiler"
|
||||
else # ubuntu18.04
|
||||
add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
|
||||
PACKAGE_LIST="autotools-dev \
|
||||
automake \
|
||||
build-essential \
|
||||
|
|
@ -75,7 +76,7 @@ else # ubuntu18.04
|
|||
libcurl4 \
|
||||
libssl1.0.0 \
|
||||
libkrb5-3 \
|
||||
libicu55 \
|
||||
libicu60 \
|
||||
libtinfo-dev \
|
||||
libtool \
|
||||
aria2 \
|
||||
|
|
@ -96,18 +97,18 @@ locale-gen en_US.UTF-8
|
|||
update-locale LANG=en_US.UTF-8
|
||||
|
||||
echo "Installing dotnet-sdk"
|
||||
if [ $SYS_LONG_BIT = "64" ]; then
|
||||
OS_VER=`lsb_release -r -s`
|
||||
if [ "$SYS_LONG_BIT" = "64" ]; then
|
||||
mkdir -p /tmp/dotnet
|
||||
aria2c -q -d /tmp/dotnet https://packages.microsoft.com/config/ubuntu/${OS_VER}/packages-microsoft-prod.deb
|
||||
aria2c -q -d /tmp/dotnet https://packages.microsoft.com/config/ubuntu/${OS_VERSION}/packages-microsoft-prod.deb
|
||||
dpkg -i /tmp/dotnet/packages-microsoft-prod.deb
|
||||
apt-get update
|
||||
apt-get install -y dotnet-sdk-2.2
|
||||
rm -rf /tmp/dotnet
|
||||
fi
|
||||
|
||||
if [ $OS_VERSION = "16.04" ]; then
|
||||
if [ $PYTHON_VER != "3.5" ]; then
|
||||
if [ "$OS_VERSION" = "16.04" ]; then
|
||||
if [ "$PYTHON_VER" != "3.5" ]; then
|
||||
add-apt-repository -y ppa:deadsnakes/ppa
|
||||
apt-get install -y --no-install-recommends \
|
||||
python${PYTHON_VER} \
|
||||
python${PYTHON_VER}-dev
|
||||
|
|
@ -119,14 +120,9 @@ if [ $OS_VERSION = "16.04" ]; then
|
|||
/usr/bin/python${PYTHON_VER} -m pip install --upgrade --force-reinstall pip==19.0.3
|
||||
fi
|
||||
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
if [ $DEVICE_TYPE = "Normal" ]; then
|
||||
aria2c -q -d /tmp -o llvm.tar.xz http://releases.llvm.org/9.0.0/clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||
tar --strip 1 -Jxf /tmp/llvm.tar.xz -C /usr
|
||||
fi
|
||||
else # ubuntu18.04
|
||||
if [ $PYTHON_VER != "3.6" ]; then
|
||||
if [ "$PYTHON_VER" != "3.6" ]; then
|
||||
add-apt-repository -y ppa:deadsnakes/ppa
|
||||
apt-get install -y --no-install-recommends \
|
||||
python${PYTHON_VER} \
|
||||
python${PYTHON_VER}-dev
|
||||
|
|
@ -137,11 +133,14 @@ else # ubuntu18.04
|
|||
#put at /usr/local/. Then there will be two pips.
|
||||
/usr/bin/python${PYTHON_VER} -m pip install --upgrade --force-reinstall pip==19.0.3
|
||||
fi
|
||||
fi
|
||||
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
if [ $DEVICE_TYPE = "Normal" ]; then
|
||||
aria2c -q -d /tmp -o llvm.tar.xz http://releases.llvm.org/9.0.0/clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-18.04.tar.xz
|
||||
tar --strip 1 -Jxf /tmp/llvm.tar.xz -C /usr
|
||||
if [ "$SYS_LONG_BIT" = "64" ]; then
|
||||
if [ "$DEVICE_TYPE" = "Normal" ]; then
|
||||
aria2c -q -d /tmp -o llvm.tar.xz http://releases.llvm.org/9.0.0/clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-${OS_VERSION}.tar.xz
|
||||
tar --strip 1 -Jxf /tmp/llvm.tar.xz -C /usr
|
||||
fi
|
||||
fi
|
||||
|
||||
|
|
|
|||
|
|
@ -49,11 +49,6 @@ elif [ $BUILD_OS = "centos7" ]; then
|
|||
DOCKER_FILE=Dockerfile.centos
|
||||
docker build -t "onnxruntime-$IMAGE" --build-arg BUILD_USER=onnxruntimedev --build-arg BUILD_UID=$(id -u) --build-arg PYTHON_VERSION=${PYTHON_VER} -f $DOCKER_FILE .
|
||||
else
|
||||
if [ $BUILD_OS = "ubuntu16.04" ]; then
|
||||
OS_VER=16.04
|
||||
else
|
||||
OS_VER=18.04
|
||||
fi
|
||||
if [ $BUILD_DEVICE = "gpu" ]; then
|
||||
IMAGE="$BUILD_OS-$CUDA_VER"
|
||||
DOCKER_FILE=Dockerfile.ubuntu_gpu
|
||||
|
|
@ -65,18 +60,18 @@ else
|
|||
# TensorRT container release 19.09
|
||||
IMAGE="$BUILD_OS-cuda10.1-cudnn7.6-tensorrt6.0"
|
||||
DOCKER_FILE=Dockerfile.ubuntu_tensorrt
|
||||
docker build -t "onnxruntime-$IMAGE" --build-arg BUILD_USER=onnxruntimedev --build-arg BUILD_UID=$(id -u) --build-arg OS_VERSION=${OS_VER} --build-arg PYTHON_VERSION=${PYTHON_VER} -f $DOCKER_FILE .
|
||||
docker build -t "onnxruntime-$IMAGE" --build-arg BUILD_USER=onnxruntimedev --build-arg BUILD_UID=$(id -u) --build-arg PYTHON_VERSION=${PYTHON_VER} -f $DOCKER_FILE .
|
||||
elif [ $BUILD_DEVICE = "openvino" ]; then
|
||||
IMAGE="$BUILD_OS-openvino"
|
||||
DOCKER_FILE=Dockerfile.ubuntu_openvino
|
||||
docker build -t "onnxruntime-$IMAGE" --build-arg BUILD_USER=onnxruntimedev --build-arg BUILD_UID=$(id -u) --build-arg OS_VERSION=${OS_VER} --build-arg PYTHON_VERSION=${PYTHON_VER} --build-arg OPENVINO_VERSION=${OPENVINO_VERSION} -f $DOCKER_FILE .
|
||||
docker build -t "onnxruntime-$IMAGE" --build-arg BUILD_USER=onnxruntimedev --build-arg BUILD_UID=$(id -u) --build-arg PYTHON_VERSION=${PYTHON_VER} --build-arg OPENVINO_VERSION=${OPENVINO_VERSION} -f $DOCKER_FILE .
|
||||
else
|
||||
IMAGE="$BUILD_OS"
|
||||
if [ $BUILD_ARCH = "x86" ]; then
|
||||
IMAGE="$IMAGE.x86"
|
||||
docker build -t "onnxruntime-$IMAGE" --build-arg BUILD_USER=onnxruntimedev --build-arg BUILD_UID=$(id -u) --build-arg OS_VERSION=${OS_VER} --build-arg PYTHON_VERSION=${PYTHON_VER} -f Dockerfile.ubuntu_x86 .
|
||||
docker build -t "onnxruntime-$IMAGE" --build-arg BUILD_USER=onnxruntimedev --build-arg BUILD_UID=$(id -u) --build-arg PYTHON_VERSION=${PYTHON_VER} -f Dockerfile.ubuntu_x86 .
|
||||
else
|
||||
docker build -t "onnxruntime-$IMAGE" --build-arg BUILD_USER=onnxruntimedev --build-arg BUILD_UID=$(id -u) --build-arg OS_VERSION=${OS_VER} --build-arg PYTHON_VERSION=${PYTHON_VER} -f Dockerfile.ubuntu .
|
||||
docker build -t "onnxruntime-$IMAGE" --build-arg BUILD_USER=onnxruntimedev --build-arg BUILD_UID=$(id -u) --build-arg PYTHON_VERSION=${PYTHON_VER} -f Dockerfile.ubuntu .
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
|
|
|||
Loading…
Reference in a new issue