77 lines
3.6 KiB
Docker
77 lines
3.6 KiB
Docker
FROM ubuntu:20.04
|
|
LABEL maintainer='kunlunxin'
|
|
|
|
RUN mkdir -p /home/workspace
|
|
WORKDIR /opt/docker
|
|
|
|
# update system
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
|
ENV TZ=Asia/Shanghai
|
|
ENV LANG=zh_CN.UTF-8
|
|
|
|
# COPY 3rds/sources.list /etc/apt/sources.list
|
|
RUN apt update && apt -y upgrade && apt install -y apt-utils pkg-config nfs-common pciutils build-essential gdb libgmp-dev libz-dev \
|
|
lsb-release lsb-core apt-transport-https ca-certificates software-properties-common wget curl \
|
|
vim yasm libgl1-mesa-glx libbz2-dev lzma liblzma-dev libglib2.0-dev libffi-dev libsqlite3-dev \
|
|
pigz libgtest-dev automake locales libnl-3-dev libnl-route-3-dev libnl-route-3-200 \
|
|
libc6-dbg automake tcl-dev gettext libcurl4-openssl-dev ssh-client libsndfile1 ccache \
|
|
libc6-dev-i386 doxygen swig libssl-dev flex bison clang-format lbzip2 \
|
|
python3.8 python3.8-dev python3-pip python3.8-venv python3-wheel caffe-cpu libopenmpi-dev libcairo2-dev \
|
|
python3-cffi python3-brotli libpango-1.0-0 libharfbuzz0b libpangoft2-1.0-0 libgtk2.0-0 \
|
|
re2c ninja-build libboost-dev libboost-program-options-dev libfftw3-dev libxml2-dev libxmlsec1-dev \
|
|
libgmock-dev sshpass libopenblas-dev libatlas-base-dev chrpath libtbb-dev libgsl-dev lcov
|
|
|
|
# install cmake-3.22.3
|
|
# ADD https://github.com/Kitware/CMake/releases/download/v3.22.3/cmake-3.22.3-linux-x86_64.sh .
|
|
COPY 3rds/cmake-3.22.3-linux-x86_64.sh .
|
|
RUN sh ./cmake-3.22.3-linux-x86_64.sh --prefix=/usr --exclude-subdir --skip-license
|
|
|
|
# install git
|
|
COPY 3rds/v2.34.0.tar.gz .
|
|
RUN tar -zxf v2.34.0.tar.gz && cd git-2.34.0 && make configure && \
|
|
./configure --prefix=/usr && make NO_GETTEXT=Yes && make install && git --version
|
|
|
|
# install mpi
|
|
RUN wget http://www.mpich.org/static/downloads/3.3.2/mpich-3.3.2.tar.gz && \
|
|
tar -zxvf mpich-3.3.2.tar.gz && cd mpich-3.3.2 && \
|
|
./configure --prefix=/usr/local/mpich-3.3.2 --disable-fortran && \
|
|
make -j$(nproc) && make install
|
|
|
|
# install git lfs
|
|
RUN curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash
|
|
RUN apt install -y git-lfs && git lfs install
|
|
|
|
# install llvm-15
|
|
RUN wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && ./llvm.sh 15 all
|
|
|
|
# pytorch 2.01
|
|
COPY 3rds/pt201.txt .
|
|
RUN python3 -m venv /home/pt201 && . /home/pt201/bin/activate && \
|
|
pip3 install --upgrade pip setuptools wheel pyproject-toml && \
|
|
pip3 install torch-2.0.1+cpu-cp38-cp38-linux_x86_64.whl && \
|
|
pip3 install torchaudio-2.0.2+cpu-cp38-cp38-linux_x86_64.whl && \
|
|
pip3 install torchtext-0.15.2+cpu-cp38-cp38-linux_x86_64.whl && \
|
|
pip3 install torchvision-0.15.2+cpu-cp38-cp38-linux_x86_64.whl && \
|
|
pip3 install -r pt201.txt && \
|
|
deactivate
|
|
|
|
# ?
|
|
RUN wget https://github.com/rui314/mold/releases/download/v1.11.0/mold-1.11.0-x86_64-linux.tar.gz && \
|
|
tar zxf mold-1.11.0-x86_64-linux.tar.gz && \
|
|
cp -rf mold-1.11.0-x86_64-linux/bin/* /usr/bin/ && \
|
|
cp -rf mold-1.11.0-x86_64-linux/lib/* /usr/lib/ && \
|
|
cp -rf mold-1.11.0-x86_64-linux/libexec/* /usr/libexec/ && \
|
|
cp -rf mold-1.11.0-x86_64-linux/share/* /usr/share/
|
|
|
|
# update
|
|
COPY 3rds/xpu_smi.4.30.0.1 /bin/xpu_smi
|
|
COPY 3rds/soft_reset.4.30.0.1 /bin/soft_reset
|
|
|
|
RUN ln -sf /usr/bin/vim /bin/vi && \
|
|
ln -sf /usr/bin/python3.8 /usr/bin/python3
|
|
|
|
RUN locale-gen zh_CN.UTF-8 && \
|
|
sed -i "/oid_section/a\openssl_conf = default_conf\n [default_conf]\n ssl_conf = ssl_sect\n [ssl_sect]\n system_default = system_default_sect\n [system_default_sect]\n MinProtocol = TLSv1.1\n CipherString = DEFAULT@SECLEVEL=1 " /etc/ssl/openssl.cnf
|
|
|
|
CMD [". /etc/profile && /bin/bash"]
|