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
Set PATH for executable file
$ export PATH=~/where/you/install/theProgram:$PATH