VM Workflow Tools Installation Cheat Sheet¶
When working with a new Virtual Machine (VM), installing software, packages, and dependencies is usually required, and the process can be cumbersome. This cheat sheet was created with running workflows on Google Cloud VM in mind. It contains quick shortcuts to install common software, dependencies, and quick fixes.
NEXTFLOW¶
Install:¶
$ export NXF_VER=20.01.0
$ export NXF_MODE=google
$ curl https://get.nextflow.io | bash
SNAKEMAKE¶
Step 1 install Miniconda:¶
Note
After “conda init fish” step restarting your VM command line is needed. In addition, if the conda command is not found, try: $export PATH=./miniconda3/bin/:$PATH
Step 2 install Snakemake:¶
Installer:
$ wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
Snakemake environment:¶
Create and activate Environment for Snakemake from a file (yml/yaml):
$ conda env create --name <yourEnvironmentName> --file environment.yaml
$ source activate <yourEnvironmentName>
Update current environment:
$ conda env update -f environment.yml
Note
For more conda commands, visit: Conda Cheat sheet.
WDL¶
Installers for Cromwell and Womtool
$ wget https://github.com/broadinstitute/cromwell/releases/download/52/cromwell-52.jar
$ wget https://github.com/broadinstitute/cromwell/releases/download/52/womtool-52.jar
CWL¶
$ sudo apt-get install python-pip
$ pip install --upgrade pip
$ pip install cwltool
GENEFLOW¶
Install Python3 and Pip (see below), then install GeneFlow in a virtual environment with the following:
$ python3 -m venv gf
$ source gf/bin/activate
$ pip3 install geneflow
Be sure to always activate the GeneFlow Python virtual environment before using the GeneFlow command line.
Common dependencies¶
Java¶
$ sudo apt install default-jre
Python¶
$ sudo apt-get update
$ sudo apt-get install python3.6
Pip install/Python-pip¶
$ sudo apt-get install python-pip
$ pip install --upgrade pip
DOCKER¶
Install:¶
For Ubuntu:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
$ sudo apt-get update
$ apt-cache policy docker-ce
$ sudo apt-get install -y docker-ce
For Debian:
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
$ sudo apt-get update
$ apt-cache policy docker-ce
$ sudo apt-get install -y docker-ce
Check docker status:¶
$ sudo systemctl status docker
Check docker installation:¶
$ docker run hello-world
If docker doesn’t run, try the fix right below or read more here.
Permission denied¶
error prompt:
docker: Got permission denied while trying to connect to the Docker daemon socket at unix
Try:
$ sudo groupadd docker
$ sudo usermod -aG docker ${USER}
close VM and reopen
DOCKER Daemon not running:¶
$ sudo service docker start
$ sudo dockerd
Graphviz¶
$ sudo apt-get install graphviz
Git/github¶
$ sudo apt install git
Wget¶
$ sudo apt-get install wget
Subversion¶
$ sudo add-apt-repository universe
$ sudo apt update
$ sudo apt install subversion
GCSFUSE¶
Mount a bucket to your folder:
$ gcsfuse bucketname myfolder/to/mount
Mount a subdirectory from your bucket to your VM folder:
$ gcsfuse --only-dir subdirectory bucketName myFolder/to/mount