Installation
Currently, there are two different ways how to use CaverDock - using Apptainer container or pre-compiled binaries. Both methods provide the fully-featured CaverDock experience and all necessary binaries, scripts, documentation and a simple example to demonstrate the CaverDock workflow described in the Quick start section of the user guide.
Note
Simple CaverDock analyses can be calculated also using the user-friendly web interface Caver Web.
Method 1: Apptainer/Singularity container (recommended)
The preferred way for CaverDock installation is using a pre-built Apptainer container image. Its advantage is that the image already contains the complete execution environment including all dependencies. So the only required step is to install the Apptainer engine (at least version 1.1.0).
Note
If you are still using the Singularity engine from Sylabs, just replace apptainer with singularity in all the commands and it should work as well. However, the usage of Singularity is deprecated and the compatibility might be eventually broken.
If you are not sure whether the engine is already installed (since it may be already present on many HPC clusters), just run the following command and if it prints the version, your Apptainer is ready to go.
$ apptainer --version
apptainer version 1.1.0
If it is not installed, you can try to install it from the repositories of your Linux distribution by using the package manager and searching for packages named apptainer. If your distribution does not provide an Apptainer engine package, you can compile it from the sources by following Official documentation. Here you can find commands for the most popular Linux distributions:
$ wget https://github.com/apptainer/apptainer/releases/download/v1.1.3/apptainer_1.1.3_amd64.deb
$ sudo apt-get install -y ./apptainer_1.1.3_amd64.deb
$ sudo yum install epel-release
$ sudo yum install apptainer
$ sudo dnf install apptainer
Once the Apptainer engine is installed, simply download the latest CaverDock Apptainer image from the website and you are ready to go. More details about the images and their usage are available in the section Apptainer/Singularity container usage.
Method 2: Pre-built binaries
The second method of installation is to use pre-built binaries for various Linux distributions.
Utilities
CaverDock requires several external third-party utilities to work - namely CAVER (command-line version) to detect tunnels and MGLTools for the handling of input structures and ligands. The documentation on how to install and use both software is available on their pages.
Tunnel discretizer
Descretizer requires several dependencies and can be installed using PIP:
$ sudo apt install libcgal-dev python3 python3-docopt python3-pip python3-pybind11 python3-scipy
$ sudo pip3 install discretizer
$ sudo apt install libcgal-dev python3 python3-docopt python3-pip python3-pybind11 python3-scipy
$ sudo pip3 install discretizer
Cannot be used directly! It is necessary to compile CGAL library manually…
$ sudo yum install python3 python3-pip
$ sudo pip3 install discretizer
$ sudo dnf install CGAL-devel gcc-c++ python3 python3-devel python3-docopt python3-pip python3-pybind11 python3-scipy
$ sudo pip3 install discretizer
CaverDock
In the beginning, it is required to install several dependencies:
For CaverDock:
$ sudo apt install openmpi-bin python3 python3-pip
$ sudo pip3 install pycaverdock
For CaverDock:
$ sudo apt install openmpi-bin python3 python3-click python3-matplotlib python3-pip python3-seaborn python3-tqdm python3-yaml
$ sudo pip3 install pycaverdock
For CaverDock:
$ sudo apt install openmpi-bin libboost-filesystem1.67.0 python3 python3-click python3-matplotlib python3-pip python3-seaborn python3-tqdm
$ sudo pip3 install pycaverdock
For CaverDock:
$ sudo apt install openmpi-bin libboost-filesystem1.74.0 python3 python3-click python3-matplotlib python3-pip python3-seaborn python3-tqdm
$ sudo pip3 install pycaverdock
For CaverDock:
$ sudo yum install openmpi boost python3 python3-pip
$ sudo pip3 install pycaverdock
Important
It might be necessary to add the OpenMPI bin directory to PATH variable
$ export PATH=/usr/lib64/openmpi/bin:$PATH
For CaverDock:
$ sudo dnf install openmpi boost python3 python3-click python3-matplotlib python3-pandas python3-pip python3-pyyaml python3-seaborn python3-tqdm
$ sudo pip3 install pycaverdock
Important
It might be necessary to add the OpenMPI bin directory to PATH variable
$ export PATH=/usr/lib64/openmpi/bin:$PATH
Once all the dependencies are installed, you have to download the distribution archive (select the appropriate one for your distribution) and extract it to your preferred path (e.g. /opt/caverdock).
$ sudo mkdir /opt/caverdock
$ cd /opt/caverdock
$ tar xf /path/to/downloaded/caverdock_archive.tar.gz
To use CaverDock without the necessity of using absolute paths, you can source a script which prepares the environment:
$ source /opt/caverdock/caverdock.bashrc
Note
If you want to have the environment activated permanently, you can automatically source this script in your .bashrc file. To enable it, run:
$ echo 'source /opt/caverdock/caverdock.bashrc' >> ~/.bashrc