Something went wrong on our end
-
Rafal Gumienny authoredRafal Gumienny authored
Dockerfile 3.39 KiB
FROM ubuntu:16.04
RUN apt-get update -y
# basic packages
RUN apt-get install -y cmake \
sip-dev \
libtiff-dev \
libfftw3-dev \
libeigen3-dev \
libpng-dev \
python-all \
python2.7 \
python-qt4 \
libboost-all-dev \
qt4-qtconfig \
qt4-qmake \
libqt4-dev \
libpng-dev \
wget \
git \
gfortran \
libeigen3-dev \
python-pip
# Install miniconda - to get useful binaries
RUN wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh
RUN bash Miniconda2-latest-Linux-x86_64.sh -p /opt/miniconda2 -b -f
RUN rm Miniconda2-latest-Linux-x86_64.sh
# Install ClustalW and MSMS
RUN /opt/miniconda2/bin/conda install -y -c bioconda clustalw=2.1 msms=2.6.1
# Install OpenMM
RUN /opt/miniconda2/bin/conda install -y -c omnia openmm=7.1.1=py27_0
# Install DSSP
RUN /opt/miniconda2/bin/conda install -y -c salilab dssp=3.0.0
# Install some python packages
RUN pip install --upgrade pip && pip install numpy==1.14.0 \
scipy==1.0.0 \
pandas==0.22.0 \
jupyter==1.0.0
# copy ost release
WORKDIR /opt/ost
RUN git clone https://git.scicore.unibas.ch/schwede/openstructure.git /opt/ost && git checkout -b develop origin/develop
# compile ost
RUN cmake . -DPYTHON_LIBRARIES=/usr/lib/x86_64-linux-gnu/libpython2.7.so \
-DOPTIMIZE=ON \
-DENABLE_MM=ON \
-DCOMPILE_TMTOOLS=1 \
-DUSE_NUMPY=1 \
-DOPEN_MM_LIBRARY=/opt/miniconda2/pkgs/openmm-7.1.1-py27_0/lib/libOpenMM.so \
-DOPEN_MM_INCLUDE_DIR=/opt/miniconda2/pkgs/openmm-7.1.1-py27_0/include/ \
-DOPEN_MM_PLUGIN_DIR=/opt/miniconda2/pkgs/openmm-7.1.1-py27_0/lib/plugins
# Build chemdict_tool
RUN make -j4 chemdict_tool
# get the compound library
RUN wget ftp://ftp.wwpdb.org/pub/pdb/data/monomers/components.cif.gz
RUN stage/bin/chemdict_tool create components.cif.gz compounds.chemlib pdb
RUN stage/bin/chemdict_tool update modules/conop/data/charmm.cif compounds.chemlib charmm
# Reconfigure OST
RUN cmake . -DPYTHON_LIBRARIES=/usr/lib/x86_64-linux-gnu/libpython2.7.so \
-DOPTIMIZE=ON \
-DENABLE_MM=ON \
-DOPEN_MM_LIBRARY=/opt/miniconda2/pkgs/openmm-7.1.1-py27_0/lib/libOpenMM.so \
-DOPEN_MM_INCLUDE_DIR=/opt/miniconda2/pkgs/openmm-7.1.1-py27_0/include/ \
-DOPEN_MM_PLUGIN_DIR=/opt/miniconda2/pkgs/openmm-7.1.1-py27_0/lib/plugins \
-DCOMPOUND_LIB=/opt/ost/compounds.chemlib
# Build OST
RUN make -j4
#RUN make check
# go back home
WORKDIR /home
# Get the example
RUN wget https://files.rcsb.org/view/5X28.pdb
# Set the environment
# - for GUI
ENV QT_X11_NO_MITSHM 1
# - for Python
ENV PYTHONPATH="/opt/ost/stage/lib64/python2.7/site-packages:${PYTHONPATH}"
# - for PATH
ENV PATH="/opt/ost/stage/bin:${PATH}"
# Link binaries
RUN ln -s /opt/miniconda2/pkgs/clustalw*/bin/* /usr/bin
RUN ln -s /opt/miniconda2/pkgs/dssp*/bin/* /usr/bin
RUN ln -s /opt/miniconda2/pkgs/msms*/bin/* /usr/bin
ENTRYPOINT ["ost"]
CMD ["-i"]