Skip to content

Commit

Permalink
Merge pull request #32 from FredHutch/master
Browse files Browse the repository at this point in the history
Add Dockerfile and wrapper script
  • Loading branch information
ToniWestbrook committed Nov 20, 2017
2 parents 9760065 + 46e22f6 commit 1cbae3c
Show file tree
Hide file tree
Showing 3 changed files with 424 additions and 0 deletions.
26 changes: 26 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
FROM ubuntu:16.04
MAINTAINER sminot@fredhutch.org

# Install prerequisites
RUN apt update && \
apt-get install -y libcurl4-openssl-dev git make gcc \
zlib1g-dev wget unzip python2.7 \
python-dev python-pip bats awscli curl && \
pip install boto3==1.4.7

# Set the default langage to C
ENV LC_ALL C

# Import the repo to /usr/bin/paladin
RUN mkdir /usr/bin/paladin
ADD . /usr/bin/paladin/
RUN cd /usr/bin/paladin && \
make && \
ln -s /usr/bin/paladin/paladin /usr/local/bin/ && \
ln -s /usr/bin/paladin/run.py /usr/local/bin/

# Test the installation
RUN cd /usr/bin/paladin/sample_data && \
bash make_test.sh && \
cd /usr/bin/paladin && \
rm -r sample_data
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ make
PATH=$PATH:$(pwd)
```

**Docker**

Alternatively, you can use Paladin with the Docker image hosted at [https://quay.io/repository/fhcrc-microbiome/paladin](https://quay.io/repository/fhcrc-microbiome/paladin). This image can be downloaded with the command `docker pull quay.io/fhcrc-microbiome/paladin`. A set of tags are used to pin releases, e.g. `v1.4.0--1` is the image pinned to the `v1.4.0` version of Paladin.

[![Docker Repository on Quay](https://quay.io/repository/fhcrc-microbiome/paladin/status "Docker Repository on Quay")](https://quay.io/repository/fhcrc-microbiome/paladin)

SAMPLE COMMANDS
--

Expand Down Expand Up @@ -70,6 +76,10 @@ paladin align -t 4 -o lungstudy uniprot_sprot.fasta.gz SRR1177122.fastq.gz
#look at report file, SAM, etc.
```

**Wrapper script**

This repo also contains a wrapper script (`run.py`) which is intended to make it easier to deploy Paladin on cloud or HPC computing resources (e.g. Slurm or AWS). The script is located in the PATH in the Docker image, and so you can run `run.py -h` to see the set of options for this script. In brief, users can specify the input URL, reference database path, and output folder location (any of which may be local paths, S3 buckets, or FTP). The run script will fetch the input data, run Paladin, wrap up the results into a single JSON output file, and copy the results to the specified output folder.

OUTPUT
--

Expand Down

0 comments on commit 1cbae3c

Please sign in to comment.