forked from coleygroup/pyscreener
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
93 lines (64 loc) · 3.51 KB
/
Dockerfile
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
# ------------------------------------------------------------------------------------------------------------
FROM mambaorg/micromamba:latest AS base
USER root
RUN apt-get update \
&& apt-get install wget make g++ libboost-all-dev xutils-dev libxss1 xscreensaver xscreensaver-gl-extra xvfb -y
COPY environment.yml .
ARG MAMBA_DOCKERFILE_ACTIVATE=1
RUN micromamba install -y -n base -f environment.yml \
&& pip install pyscreener \
&& micromamba clean --all --yes
# ------------------------------------------------------------------------------------------------------------
FROM base AS base-vina
RUN wget -O ADFRsuite.tar.gz https://ccsb.scripps.edu/adfr/download/1038/ \
&& mv ADFRsuite.tar.gz ../ && cd .. \
&& tar -xzvf ADFRsuite.tar.gz \
&& cd ADFRsuite_* \
&& echo "Y" | ./install.sh -d . -c 0 \
&& cd .. \
&& rm -rf ADFRsuite.tar.gz
ENV PATH="${PATH}:/ADFRsuite_x86_64Linux_1.0/bin:"
# ------------------------------------------------------------------------------------------------------------
FROM base-vina AS vina
RUN wget https://vina.scripps.edu/wp-content/uploads/sites/55/2020/12/autodock_vina_1_1_2_linux_x86.tgz \
&& tar -xzvf autodock_vina_1_1_2_linux_x86.tgz \
&& mv autodock_vina_1_1_2_linux_x86/bin/* ../bin/
# ------------------------------------------------------------------------------------------------------------
FROM base-vina AS psovina
RUN wget -O psovina-2.0.tar.gz https://sourceforge.net/projects/psovina/files/psovina-2.0.tar.gz/download \
&& tar -xzvf psovina-2.0.tar.gz \
&& cd psovina-2.0/build/linux/release/ \
&& make \
&& mv psovina* ../../../../../bin/
# ------------------------------------------------------------------------------------------------------------
FROM base-vina AS smina
RUN wget -O smina https://sourceforge.net/projects/smina/files/smina.static/download \
&& chmod +x smina \
&& mv smina ../bin/
# ------------------------------------------------------------------------------------------------------------
FROM base-vina AS qvina
SHELL ["/bin/bash", "-c"]
RUN apt-get install git -y \
&& git clone -b qvina2_1buffer --single-branch https://github.com/QVina/qvina.git \
&& cd qvina \
&& BOOST_LOC=$(whereis boost) && BOOST_PATH=${BOOST_LOC:7:19} && BOOST_VERSION=$(grep "#define BOOST_LIB_VERSION" ../../usr/include/boost/version.hpp | grep -o '".*"' | sed 's/"//g') \
&& sed -i "1s|.*|BASE=$BOOST_PATH|" Makefile && sed -i "2s|.*|BASE=$BOOST_VERSION|" Makefile \
&& make \
&& mv qvina02 ../../bin/qvina \
&& cd ../ && rm -rf qvina
# rename qvina02 to qvina otherwise pyscreener raises an error with executable name
# ------------------------------------------------------------------------------------------------------------
FROM base as base-dock6
RUN mkdir ../dock6_utils
RUN cd ../dock6_utils \
&& mkdir sphgen_cpp_download && cd sphgen_cpp_download \
&& wget http://dock.compbio.ucsf.edu/Contributed_Code/code/sphgen_cpp.1.2.tar.gz \
&& tar -xzvf sphgen_cpp.1.2.tar.gz \
&& cd sphgen_cpp.1.2 \
&& make \
&& mv sphgen_cpp ../../ \
&& cd ../../ && rm -rf sphgen_cpp_download
RUN cd ../dock6_utils \
&& wget -O chimera-installer.bin "https://www.cgl.ucsf.edu/chimera/cgi-bin/secure/chimera-get.py?ident=OHeQer2WSaxn%2FepyqXlK%2BP9gulBVQ9j%2B1xtw0AnmnvIv&file=linux_x86_64%2Fchimera-1.16-linux_x86_64.bin&choice=Notified" \
&& chmod +x chimera-installer.bin
# ------------------------------------------------------------------------------------------------------------