12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- ARG BASE_IMAGE="ubuntu:21.04"
- FROM ${BASE_IMAGE}
- # FROM directive resets ARG
- ARG BASE_IMAGE
- # If this arg is not "autoscaler" then no autoscaler requirements will be included
- ARG AUTOSCALER="autoscaler"
- ENV TZ=America/Los_Angeles
- ENV PATH "/root/anaconda3/bin:$PATH"
- ARG DEBIAN_FRONTEND=noninteractive
- ARG PYTHON_VERSION=3.7.7
- RUN apt-get update -y \
- && apt-get install -y sudo tzdata \
- && rm -rf /var/lib/apt/lists/* \
- && apt-get clean
- RUN apt-get update -y && sudo apt-get upgrade -y \
- && sudo apt-get install -y \
- git \
- wget \
- cmake \
- g++ \
- zlib1g-dev \
- $(if [ "$AUTOSCALER" = "autoscaler" ]; then echo \
- tmux \
- screen \
- rsync \
- openssh-client \
- gnupg; fi) \
- unzip \
- && wget \
- --quiet "https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh" \
- -O /tmp/miniconda.sh \
- && /bin/bash /tmp/miniconda.sh -b -u -p $HOME/anaconda3 \
- && $HOME/anaconda3/bin/conda init \
- && echo 'export PATH=$HOME/anaconda3/bin:$PATH' >> /root/.bashrc \
- && rm /tmp/miniconda.sh \
- && $HOME/anaconda3/bin/conda install -y \
- libgcc python=$PYTHON_VERSION \
- && $HOME/anaconda3/bin/conda clean -y --all \
- && $HOME/anaconda3/bin/pip install --no-cache-dir \
- flatbuffers \
- cython==0.29.26 \
- numpy==1.15.4 \
- psutil \
- # To avoid the following error on Jenkins:
- # AttributeError: 'numpy.ufunc' object has no attribute '__module__'
- && $HOME/anaconda3/bin/pip uninstall -y dask \
- # We install cmake temporarily to get psutil
- && sudo apt-get autoremove -y cmake zlib1g-dev \
- # We keep g++ on GPU images, because uninstalling removes CUDA Devel tooling
- $(if [ "$BASE_IMAGE" = "ubuntu:focal" ]; then echo \
- g++; fi) \
- # Either install kubectl or remove wget
- && (if [ "$AUTOSCALER" = "autoscaler" ]; \
- then wget -O - -q https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - \
- && sudo touch /etc/apt/sources.list.d/kubernetes.list \
- && echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list \
- && sudo apt-get update \
- && sudo apt-get install kubectl; \
- else sudo apt-get autoremove -y wget; \
- fi;) \
- && sudo rm -rf /var/lib/apt/lists/* \
- && sudo apt-get clean
- RUN apt-get update -y \
- && apt-get install -y gnupg curl golang wget make git libseccomp-dev \
- #&& . /etc/os-release \
- #&& echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_${VERSION_ID}/ /" | tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list \
- #&& curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_${VERSION_ID}/Release.key | apt-key add - \
- #&& apt-get update \
- && apt-get -y install podman runc \
- && rm -rf /var/lib/apt/lists/* \
- && apt-get clean
- ARG WHEEL_PATH
- ARG FIND_LINKS_PATH=".whl"
- # For Click
- ENV LC_ALL=C.UTF-8
- ENV LANG=C.UTF-8
- COPY $WHEEL_PATH .
- COPY $FIND_LINKS_PATH $FIND_LINKS_PATH
- RUN $HOME/anaconda3/bin/pip --no-cache-dir install `basename $WHEEL_PATH`[all] \
- --find-links $FIND_LINKS_PATH && sudo rm `basename $WHEEL_PATH`
|