github.com/NVIDIA/aistore@v1.3.23-0.20240517131212-7df6609be51d/deploy/dev/docker/Dockerfile (about)

     1  FROM ubuntu:22.04
     2  
     3  RUN apt-get clean && apt-get update &&\
     4    set -eux &&\
     5    apt-get --no-install-recommends -y install \
     6        lsof \
     7        curl \
     8        git \
     9        ca-certificates \
    10        wget \
    11        vim \
    12        python3 \
    13        python3-distutils \
    14        python3-apt \
    15        sysstat \
    16        attr \
    17        net-tools \
    18        iproute2 \
    19        make \
    20        gnupg \
    21        iputils-ping &&\
    22    apt-get -y clean all
    23  
    24  RUN wget https://bootstrap.pypa.io/get-pip.py &&\
    25    python3 get-pip.py &&\
    26    pip install awscli s3cmd
    27  
    28  # Setting ENV variables
    29  ENV GOLANG_VERSION="1.22.1"
    30  
    31  # Reassign arguments to environment variables so run.sh can use them
    32  ENV GOPATH /go
    33  ENV GOBIN $GOPATH/bin
    34  ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH
    35  
    36  # Installing go
    37  RUN mkdir -p "$GOPATH/bin" && chmod -R 777 "$GOPATH"
    38  RUN curl -LO https://go.dev/dl/go${GOLANG_VERSION}.linux-amd64.tar.gz &&\
    39    tar -C /usr/local -xvzf go${GOLANG_VERSION}.linux-amd64.tar.gz > /dev/null 2>&1 &&\
    40    rm -rf go${GOLANG_VERSION}.linux-amd64.tar.gz
    41  
    42  # Install statsd
    43  RUN git clone https://github.com/etsy/statsd.git
    44  
    45  ENV AIS_CONF_DIR /tmp/.conf
    46  ENV AIS_CONF_FILE ${AIS_CONF_DIR}/ais.json
    47  ENV AIS_LOCAL_CONF_FILE ${AIS_CONF_DIR}/ais_local.json
    48  ENV COLLECTD_CONF_FILE ${AIS_CONF_DIR}/collectd.conf
    49  ENV STATSD_CONF_FILE ${AIS_CONF_DIR}/statsd.conf
    50  
    51  ENV MOUNTPATH /tmp/ais
    52  
    53  COPY aisnode_config.sh aisnode_config.sh
    54  COPY entrypoint/entrypoint.sh entrypoint.sh
    55  COPY limits.conf /etc/security/limits.conf
    56  
    57  RUN mkdir -p $GOPATH/src/github.com/NVIDIA && \
    58      cd $GOPATH/src/github.com/NVIDIA && \
    59      git clone https://github.com/NVIDIA/aistore.git && \
    60      cd ${GOPATH}/src/github.com/NVIDIA/aistore && \
    61      AIS_BACKEND_PROVIDERS="aws azure gcp" make node
    62  
    63  
    64  WORKDIR "${GOPATH}/src/github.com/NVIDIA/aistore"
    65  
    66  EXPOSE 51080 9080 10080
    67  
    68  ENTRYPOINT ["sh", "-c", "/entrypoint.sh"]