-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDocker.ub20.04-cuda11.3-cudnn8-pytorch1.10.0-extra
66 lines (57 loc) · 2.96 KB
/
Docker.ub20.04-cuda11.3-cudnn8-pytorch1.10.0-extra
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
FROM deeplearnphysics/larcv2:ub20.04-cuda11.3-cudnn8-pytorch1.10.0
LABEL maintainer="drinkingkazu"
LABEL contact="[email protected]"
LABEL type="gpu"
LABEL version="ub20.04-cuda11.3-cudnn8-pytorch1.10.0-extra"
ARG DEBIAN_FRONTEND=noninteractive
# for user-specific temporary files
ENV XDG_RUNTIME_DIR=/tmp/$USER
# root
ENV ROOTSYS=/app/root
ENV PATH="${ROOTSYS}/bin:${PATH}"
ENV LD_LIBRARY_PATH="${ROOTSYS}/lib:${LD_LIBRARY_PATH}"
ENV PYTHONPATH="${ROOTSYS}/lib:${PYTHONPATH}"
# larcv build
ENV LARCV_BASEDIR=/app/larcv2
ENV LARCV_BUILDDIR="${LARCV_BASEDIR}/build"
ENV LARCV_COREDIR="${LARCV_BASEDIR}/larcv/core"
ENV LARCV_APPDIR="${LARCV_BASEDIR}/larcv/app"
ENV LARCV_LIBDIR="${LARCV_BUILDDIR}/lib"
ENV LARCV_INCDIR="${LARCV_BUILDDIR}/include"
ENV LARCV_BINDIR="${LARCV_BUILDDIR}/bin"
ENV LARCV_ROOT6=1
ENV LARCV_CXX=g++
# with numpy
ENV LARCV_NUMPY=1
ENV LARCV_PYTHON=/usr/bin/python3
ENV LARCV_PYTHON_CONFIG=python3.8-config
ENV LARCV_INCLUDES=" -I/app/larcv2/build/include -I/usr/include/python3.8 -I/usr/local/lib/python3.8/dist-packages/numpy/core/include"
ENV LARCV_LIBS=" -L/usr/lib/ -L/usr/lib/python3.8/config-3.8-x86_64-linux-gnu -L/usr/lib -lcrypt -lpthread -ldl -lutil -lm -L/app/larcv2/build/lib -llarcv"
# set bin and lib path
ENV PATH=${LARCV_BASEDIR}/bin:${LARCV_BINDIR}:${PATH}
ENV LD_LIBRARY_PATH=${LARCV_LIBDIR}:${LD_LIBRARY_PATH}:
ENV PYTHONPATH=${LARCV_BASEDIR}/python:${PYTHONPATH}
# Update apt-key (needed 2022-Nov)
RUN apt-key del 7fa2af80 && \
apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub
# ROOT + larcv2
RUN apt-get -y update && \
apt-get -y install x11-utils gfortran autoconf automake subversion openssh-client openssl && \
apt-get -y install libglu1-mesa-dev libglw1-mesa libglew-dev libmotif-dev libpng-dev libjpeg-turbo8-dev libftgl-dev libgl2ps-dev && \
apt-get -y install libxml2-dev libgmp-dev libgsl-dev liblog4cpp5-dev libbz2-dev libpcre2-dev liblzma-dev zlib1g-dev libfreetype-dev libfftw3-dev libblas-dev liblapack-dev libxxhash-dev liblz4-dev && \
apt-get -y install cmake libx11-dev libxpm-dev libxft-dev libxext-dev libssl-dev && \
wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=1RDPTyBnhFp0N2l1kKCkrwdQkMAaqKxbg' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=1RDPTyBnhFp0N2l1kKCkrwdQkMAaqKxbg" -O root.tar.gz && \
rm /tmp/cookies.txt && \
tar -xzf root.tar.gz && \
rm root.tar.gz && \
mkdir -p /app && mv root /app/root && \
pip3 --no-cache-dir install rootpy root_numpy uproot && \
mkdir -p /app && \
cd /app && \
git clone https://github.com/DeepLearnPhysics/larcv2 && \
cd larcv2 && \
mkdir -p $LARCV_BUILDDIR && \
mkdir -p $LARCV_LIBDIR && \
mkdir -p $LARCV_BINDIR && \
make -j4 && \
apt-get autoremove -y && apt-get clean -y