github.com/NVIDIA/aistore@v1.3.23-0.20240517131212-7df6609be51d/deploy/ci/general.dockerfile (about)

     1  FROM golang:1.22
     2  
     3  ENV GOPATH="/go"
     4  ENV PATH="${GOPATH}/bin:${PATH}"
     5  
     6  RUN apt-get update -yq
     7  RUN apt-get --no-install-recommends -y install curl git sysstat attr build-essential lsof coreutils python3-pip python3-setuptools s3cmd docker.io uuid-runtime bc gettext-base
     8  # Python source-build requirements
     9  RUN apt-get --no-install-recommends -y install wget libbz2-dev libncursesw5-dev unzip libreadline-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libffi-dev zlib1g-dev xz-utils lzma liblzma-dev
    10  
    11  # Install Python 3.11 from source
    12  RUN curl -o python3.11.tgz https://www.python.org/ftp/python/3.11.1/Python-3.11.1.tgz
    13  RUN tar xf python3.11.tgz
    14  RUN (cd Python-3.11.1 && ./configure --enable-optimizations && make -j4 && make install)
    15  RUN pip3 install --upgrade pip
    16  RUN pip3 install awscli black[jupyter]
    17  
    18  # Install `kubectl`.
    19  RUN curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
    20  RUN chmod +x ./kubectl
    21  RUN mv ./kubectl /usr/local/bin/kubectl
    22  RUN kubectl version --client
    23  
    24  # Cache all dependencies and install the linter.
    25  RUN git clone --depth=1 https://github.com/NVIDIA/aistore.git && cd aistore && \
    26  go mod download && \
    27  cd cmd/cli && go mod download && cd ../.. && \
    28  make lint-update-ci && \
    29  make install-python-deps && \
    30  cd .. && rm -rf aistore