Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ncov-recombinant v0.6.1 APHL Docker Workshop #583

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Program_Licenses.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ The licenses of the open-source software that is contained in these Docker image
| Mummer | The Artistic License 2.0| https://github.com/mummer4/mummer/blob/master/LICENSE.md |
| Mykrobe | MIT | https://github.com/Mykrobe-tools/mykrobe/blob/master/LICENSE |
| NanoPlot | GNU GPLv3 | https://github.com/wdecoster/NanoPlot/blob/master/LICENSE |
| ncov-recombinant | MIT | https://github.com/ktmeaton/ncov-recombinant/blob/master/LICENSE |
| NCBI AMRFinderPlus | Public Domain | https://github.com/ncbi/amr/blob/master/LICENSE |
| NCBI Datasets | Public Domain | https://github.com/ncbi/datasets/blob/master/pkgs/ncbi-datasets-cli/LICENSE.md |
| NCBI table2asn | Public Domain | unknown |
Expand Down
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,9 +99,10 @@ To learn more about the docker pull rate limits and the open source software pro
| [mlst](https://hub.docker.com/r/staphb/mlst) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/mlst)](https://hub.docker.com/r/staphb/mlst) | <ul><li>2.16.2</li><li>2.17.6</li><li>2.19.0</li><li>2.22.0</li><li>2.22.1</li><li>2.23.0</li></ul> | https://github.com/tseemann/mlst |
| [Mugsy](https://hub.docker.com/r/staphb/mugsy) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/mugsy)](https://hub.docker.com/r/staphb/mugsy) | <ul><li>1r2.3</li></ul> | http://mugsy.sourceforge.net/ |
| [MultiQC](https://hub.docker.com/r/staphb/multiqc) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/multiqc)](https://hub.docker.com/r/staphb/multiqc) | <ul><li>1.7</li><li>1.8</li></ul> | https://github.com/ewels/MultiQC |
| [Mummer](https://hub.docker.com/r/staphb/mummer) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/mummer)](https://hub.docker.com/r/staphb/mummer) | <ul><li>4.0.0</li><li>4.0.0 + RGDv2</li></ul> | https://github.com/mummer4/mummer |
| [Mykrobe + Genotyphi + sonneityping](https://hub.docker.com/r/staphb/mykrobe) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/mykrobe)](https://hub.docker.com/r/staphb/mykrobe) | <ul><li>0.11.0 (Mykrobe) & 1.9.1 (Genotyphi) </li><li>0.12.1 (Mykrobe) & 1.9.1 (Genotyphi) & v20210201 (sonneityping) </li></ul> | https://github.com/Mykrobe-tools/mykrobe <br/> https://github.com/katholt/genotyphi <br/> https://github.com/katholt/sonneityping |
| [NanoPlot](https://hub.docker.com/r/staphb/nanoplot) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/nanoplot)](https://hub.docker.com/r/staphb/nanoplot) | <ul><li>1.27.0</li><li>1.29.0</li><li>1.30.1</li><li>1.32.0</li><li>1.33.0</li><li>1.40.0</li></ul> | https://github.com/wdecoster/NanoPlot |
| [Mummer](https://hub.docker.com/r/staphb/mummer) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/mummer)](https://hub.docker.com/r/staphb/mummer) | <ul><li>4.0.0</li></ul> | https://github.com/mummer4/mummer |
| [Mykrobe + Genotyphi](https://hub.docker.com/r/staphb/mykrobe) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/mykrobe)](https://hub.docker.com/r/staphb/mykrobe) | <ul><li>0.11.0 (Mykrobe) & 1.9.1 (Genotyphi) </li></ul> | https://github.com/Mykrobe-tools/mykrobe <br/> https://github.com/katholt/genotyphi |
| [NanoPlot](https://hub.docker.com/r/staphb/nanoplot) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/nanoplot)](https://hub.docker.com/r/staphb/nanoplot) | <ul><li>1.27.0</li><li>1.29.0</li><li>1.30.1</li><li>1.32.0</li><li>1.33.0</li></ul> | https://github.com/wdecoster/NanoPlot |
| [ncov-recombinant](https://hub.docker.com/r/staphb/nanoplot) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/ncov-recombinant)](https://hub.docker.com/r/staphb/ncov-recombinant) | <ul><li>0.6.1</li></ul> | https://github.com/ktmeaton/ncov-recombinant |
| [ngmaster](https://hub.docker.com/r/staphb/ngmaster) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/ngmaster)](https://hub.docker.com/r/staphb/ngmaster) | <ul><li>0.5.8</li><li>1.0.0</li></ul> | https://github.com/MDU-PHL/ngmaster |
| [NCBI Datasets](https://hub.docker.com/r/staphb/ncbi-datasets) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/ncbi-datasets)](https://hub.docker.com/r/staphb/ncbi-datasets) | <ul><li>13.31.0</li><li>13.35.0</li><li>13.43.2</li><li>14.0.0</li><li>14.3.0</li></ul> | [https://github.com/ncbi/datasets](https://github.com/ncbi/datasets) <br/>[https://www.ncbi.nlm.nih.gov/datasets/docs/v1/](https://www.ncbi.nlm.nih.gov/datasets/docs/v1/) |
| [NCBI AMRFinderPlus](https://hub.docker.com/r/staphb/ncbi-amrfinderplus) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/ncbi-amrfinderplus)](https://hub.docker.com/r/staphb/ncbi-amrfinderplus) | <ul><li>3.1.1b</li><li>3.8.4</li><li>3.8.28</li><li>3.9.3</li><li>3.9.8</li><li>3.10.1</li><li>3.10.5</li><li>3.10.16</li><li>3.10.20</li><li>3.10.24</li><li>3.10.30</li><li>3.10.36</li><li>3.10.42</li></ul> | [https://github.com/ncbi/amr](https://github.com/ncbi/amr) |
Expand Down Expand Up @@ -205,6 +206,7 @@ Each Dockerfile lists the author(s)/maintainer(s) as a metadata `LABEL`, but the
* [@tiverson](https://github.com/tives82)
* [@sbthandras](https://github.com/sbthandras)
* [@idolawoye](https://github.com/idolawoye)
* [@whottel](https://github.com/whottel)
* [@michellescribner](https://github.com/michellescribner)
* [@cjjossart](https://github.com/cjjossart)
* [@jlumpe](https://github.com/jlumpe)
Expand Down
52 changes: 52 additions & 0 deletions ncov-recombinant/0.6.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
ARG ncov_recombinant_version='0.6.1'
FROM mambaorg/micromamba:0.24.0 as app
ARG ncov_recombinant_version
USER root

WORKDIR /

#metadata
LABEL base.image="FROM mambaorg/micromamba:0.24.0"
LABEL dockerfile.version="1"
LABEL software="ncov-recombinant"
LABEL software.version="v${ncov_recombinant_version}"
LABEL description="SARS-CoV-2 recombinant sequence detection"
LABEL website="https://github.com/ktmeaton/ncov-recombinant"
LABEL license="https://github.com/ktmeaton/ncov-recombinant/blob/master/LICENSE"
LABEL maintainer="Wes Hottel"
LABEL maintainer.email="wesley-hottel@uiowa.edu"

#Install dependencies
RUN apt-get update && apt-get install --no-install-recommends -y python \
git \
procps \
wget && \
rm -rf /var/lib/apt/lists/* && apt-get autoclean

#Clone ncov-recombinant repository
RUN wget https://github.com/ktmeaton/ncov-recombinant/archive/refs/tags/v${ncov_recombinant_version}.tar.gz && \
tar zxf v${ncov_recombinant_version}.tar.gz && \
rm -rf v${ncov_recombinant_version}.tar.gz

#Install ncov-recombinant
RUN micromamba create -n ncov-recombinant-env -f /ncov-recombinant-${ncov_recombinant_version}/workflow/envs/environment.yaml &&\
micromamba clean -a -y

#Set environment
ENV PATH="/opt/conda/envs/ncov-recombinant-env/bin:/opt/conda/envs/env/bin:${PATH}" \
LC_ALL=C.UTF-8

WORKDIR /data

#Test install using postive controls included as part of repo
FROM app as test
ARG ncov_recombinant_version

WORKDIR /ncov-recombinant-${ncov_recombinant_version}

ENV ENV_NAME="ncov-recombinant-env"
ARG MAMBA_DOCKERFILE_ACTIVATE=1

RUN snakemake --profile /ncov-recombinant-${ncov_recombinant_version}/profiles/controls-positive

WORKDIR /data
18 changes: 18 additions & 0 deletions ncov-recombinant/0.6.1/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# ncov-recombinant container

Main tool : [ncov-recombinant](https://github.com/ktmeaton/ncov-recombinant)

ncov-recombinant is a recombinant sequence detection tool for SARS-CoV-2 fasta files.
This tool:
1) Aligns sequences and performs clade/lineage assignments with Nextclade
2) Identifies parental clades and plots recombination breakpoints with sc2rf.
3) Creates tables, plots, and powerpoint slides for reporting.

When using this Dockerfile please make sure that you are using a WORKDIR that is mounted to your system.
https://bioinformatics.stackexchange.com/questions/9129/access-workdir-defined-on-command-line-from-within-snakefile

## Example Usage

```bash
snakemake --directory WORKDIR --profile /ncov-recombinant/profiles/controls
```