-
Notifications
You must be signed in to change notification settings - Fork 0
/
Docker.ub18.04-cuda100-py3-pytorch1.1.0-scn
111 lines (96 loc) · 4.65 KB
/
Docker.ub18.04-cuda100-py3-pytorch1.1.0-scn
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04
LABEL maintainer="drinkingkazu"
LABEL contact="[email protected]"
LABEL version="ub18.04-cuda100-py3-pytorch1.1.0-scn"
ARG DEBIAN_FRONTEND=noninteractive
# for system
ENV XDG_RUNTIME_DIR=/tmp/$USER
# for ROOT
ENV ROOTSYS=/usr/local/root
ENV PATH=${ROOTSYS}/bin:${PATH}
ENV LD_LIBRARY_PATH="${ROOTSYS}/lib:${LD_LIBRARY_PATH}"
ENV PYTHONPATH=${ROOTSYS}/lib:${PYTHONPATH}
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_INCLUDES="-I/app/larcv2/build/include -I/usr/include/python3.6m -I/usr/include/python3.6m -I/usr/local/lib/python3.6/dist-packages/numpy/core/include"
ENV LARCV_LIBS="-L/usr/lib/ -L/usr/lib/python3.6/config-3.6m-x86_64-linux-gnu -L/usr/lib -lpython3.6m -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions -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}
RUN apt-get -y update
RUN apt-get -y install dpkg-dev g++ gcc binutils libqt4-dev python3-dev python3-tk python3-pip git wget emacs vim && \
apt-get -y install zsh dpkg-dev g++ gcc binutils cmake libqt4-dev screen tmux && \
apt-get -y install python3-dev python3-tk python3-pip python3-setuptools && \
apt-get -y install openssh-client curl && \
apt-get -y install libsparsehash-dev libhdf5-dev
# asciinema
RUN apt-get install -y locales && \
locale-gen en_US.UTF-8 && \
apt-get -y install software-properties-common && \
apt-add-repository -y ppa:zanchey/asciinema && \
apt-get -y update && \
apt-get -y install asciinema
# ROOT
RUN apt-get -y install libxpm-dev libxft-dev libxext-dev libssl-dev libftgl-dev libfftw3-dev libxml2-dev libkrb5-dev
RUN wget https://www.nevis.columbia.edu/~kazuhiro/ub18.04-py3-rootv6.16.00.tgz && \
tar -xzf ub18.04-py3-rootv6.16.00.tgz && \
rm ub18.04-py3-rootv6.16.00.tgz && \
mv root.v6.16.00 /usr/local/root
ENV ROOTSYS=/usr/local/root
ENV PATH=${ROOTSYS}/bin:${PATH}
ENV LD_LIBRARY_PATH=${ROOTSYS}/lib:${LD_LIBRARY_PATH}
ENV PYTHONPATH=${ROOTSYS}/lib:${PYTHONPATH}
# pip basics
RUN pip3 --no-cache-dir install --upgrade setuptools && \
pip3 --no-cache-dir install numpy wheel zmq six pygments pyyaml cython pytest && \
pip3 --no-cache-dir install gputil psutil humanize h5py tqdm && \
pip3 --no-cache-dir install scipy tables pandas scikit-image scikit-learn Pillow opencv-python rootpy && \
pip3 --no-cache-dir install matplotlib seaborn cufflinks && \
pip3 --no-cache-dir install plotly==3.10.0 && \
pip3 --no-cache-dir install ipython #'ipython<6.0' && \
pip3 --no-cache-dir install ipykernel && \
pip3 --no-cache-dir install jupyter notebook
# pytorch
RUN pip3 --no-cache-dir install https://download.pytorch.org/whl/cu100/torch-1.1.0-cp36-cp36m-linux_x86_64.whl && \
pip3 --no-cache-dir install torchvision
# larcv
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++
ENV LARCV_NUMPY=1
ENV LARCV_PYTHON=/usr/bin/python3
ENV LARCV_PYTHON_CONFIG=python3.6-config
ENV LARCV_INCLUDES=" -I/app/larcv2/build/include -I/usr/include/python3.6m -I/usr/include/python3.6m -I/usr/local/lib/python3.6/dist-packages/numpy/core/include"
ENV LARCV_LIBS=" -L/usr/lib/ -L/usr/lib/python3.6/config-3.6m-x86_64-linux-gnu -L/usr/lib -lpython3.6m -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions -L/app/larcv2/build/lib -llarcv"
ENV PATH=${LARCV_BASEDIR}/bin:${LARCV_BINDIR}:${PATH}
ENV LD_LIBRARY_PATH=${LARCV_LIBDIR}:${LD_LIBRARY_PATH}:
ENV PYTHONPATH=${LARCV_BASEDIR}/python:${PYTHONPATH}
RUN mkdir -p /app && \
cd /app && \
git clone https://github.com/DeepLearnPhysics/larcv2 && \
cd larcv2 && \
git checkout develop && \
mkdir -p $LARCV_BUILDDIR && \
mkdir -p $LARCV_LIBDIR && \
mkdir -p $LARCV_BINDIR && \
make -j4
# scn
RUN pip3 --no-cache-dir install -i https://test.pypi.org/simple/ scn-cuda10-py3=="0.2.415.27"
# pytorch-geometric
RUN pip3 --no-cache-dir install torch-scatter torch-sparse torch-cluster torch-spline-conv torch-geometric