clockwork icon indicating copy to clipboard operation
clockwork copied to clipboard

add Dockerfile, v 0.1.0

Open evanbiederstedt opened this issue 5 years ago • 0 comments

Adds Dockerfile to create the following docker image, clockwork:0.1.0

Hosted here: https://hub.docker.com/r/evanbiederstedt/clockwork/tags

It appears to work for me:

$ docker run -it evanbiederstedt/clockwork:0.1.0     /bin/bash
root@22bb05250e82:/# which bwa
/bin/bwa
root@22bb05250e82:/# bwa

Program: bwa (alignment via Burrows-Wheeler transformation)
Version: 0.7.15-r1140
Contact: Heng Li <[email protected]>

Usage:   bwa <command> [options]

Command: index         index sequences in the FASTA format
         mem           BWA-MEM algorithm
         fastmap       identify super-maximal exact matches
         pemerge       merge overlapping paired ends (EXPERIMENTAL)
         aln           gapped/ungapped alignment
         samse         generate alignment (single ended)
         sampe         generate alignment (paired ended)
         bwasw         BWA-SW for long queries

         shm           manage indices in shared memory
         fa2pac        convert FASTA to PAC format
         pac2bwt       generate BWT from PAC
         pac2bwtgen    alternative algorithm for generating BWT
         bwtupdate     update .bwt to the new format
         bwt2sa        generate SA from BWT and Occ

Note: To use BWA, you need to first index the genome with `bwa index'.
      There are three alignment algorithms in BWA: `mem', `bwasw', and
      `aln/samse/sampe'. If you are not sure which to use, try `bwa mem'
      first. Please `man ./bwa.1' for the manual.

root@22bb05250e82:/# exit
exit
$

There are a few changes from the Singularity recipe file, here:

https://github.com/iqbal-lab-org/clockwork/blob/master/singularity/clockwork_container.def https://github.com/iqbal-lab-org/clockwork/blob/master/scripts/install_dependencies.sh

e.g. https://github.com/iqbal-lab-org/clockwork/blob/master/scripts/install_dependencies.sh#L186

pip3 install --process-dependency-links wheel git+https://github.com/iqbal-lab-org/gramtools@4644135e162ff1ff333f970f1dafd919aa0fc279

Apparently --process-dependency-links is deprecated in the newest version of pip; I would get the warning building the Docker image

DEPRECATION: Dependency Links processing has been deprecated and will be removed in a future release

and I believe I had a fatal error locally, i.e.

no such option: --process-dependency-links

Another thing is that I moved executables to be used in /bin. The installation script creates symbolic links, which are ok too---they don't work immediately as executables without invoking ./executable, so I did this instead on the fly.

Naturally, it all depends how you'd like to call these tools within the NF scripts. One could also re-organize the tools in a number of ways for ease of use. Feel free to edit.

evanbiederstedt avatar Nov 20 '19 00:11 evanbiederstedt