From 0a739c8b2e917022e5ab74a86c5061c3db779f44 Mon Sep 17 00:00:00 2001 From: whottel <30357265+whottel@users.noreply.github.com> Date: Thu, 2 Feb 2023 12:50:54 -0600 Subject: [PATCH 1/7] Create Dockerfile --- ncov-recombinant/0.6.1/Dockerfile | 46 +++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 ncov-recombinant/0.6.1/Dockerfile diff --git a/ncov-recombinant/0.6.1/Dockerfile b/ncov-recombinant/0.6.1/Dockerfile new file mode 100644 index 000000000..1b1487d2d --- /dev/null +++ b/ncov-recombinant/0.6.1/Dockerfile @@ -0,0 +1,46 @@ +FROM mambaorg/micromamba:0.24.0 as app + +USER root + +WORKDIR / + +#metadata +LABEL base.image="FROM mambaorg/micromamba:0.24.0" +LABEL dockerfile.version="1" +LABEL software="ncov-recombinant" +LABEL software.version="v0.6.1" +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 -y python \ + git \ + wget && \ + rm -rf /var/lib/apt/lists/* && apt-get autoclean + +#Clone ncov-recombinant repository +RUN git clone https://github.com/ktmeaton/ncov-recombinant.git &&\ +cd ncov-recombinant + +#Install ncov-recombinant +RUN micromamba create -n ncov-recombinant-env -f ncov-recombinant/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 + +WORKDIR /ncov-recombinant + +ENV ENV_NAME="ncov-recombinant-env" +ARG MAMBA_DOCKERFILE_ACTIVATE=1 + +RUN snakemake --profile /ncov-recombinant/profiles/controls-positive From 8b448fc28a32cdc61defc2325623c5808a910d8d Mon Sep 17 00:00:00 2001 From: whottel <30357265+whottel@users.noreply.github.com> Date: Tue, 7 Feb 2023 17:05:44 -0600 Subject: [PATCH 2/7] Create README.md --- ncov-recombinant/0.6.1/README.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 ncov-recombinant/0.6.1/README.md diff --git a/ncov-recombinant/0.6.1/README.md b/ncov-recombinant/0.6.1/README.md new file mode 100644 index 000000000..f84ffd857 --- /dev/null +++ b/ncov-recombinant/0.6.1/README.md @@ -0,0 +1,15 @@ +# 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. + +## Example Usage + +```bash +snakemake --profile /ncov-recombinant/profiles/controls +``` From 119af94f229f4918935e8c3e044dba09dafcb014 Mon Sep 17 00:00:00 2001 From: whottel <30357265+whottel@users.noreply.github.com> Date: Tue, 7 Feb 2023 17:11:46 -0600 Subject: [PATCH 3/7] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 890b50a04..040ce723b 100644 --- a/README.md +++ b/README.md @@ -99,6 +99,7 @@ To learn more about the docker pull rate limits and the open source software pro | [Mummer](https://hub.docker.com/r/staphb/mummer)
[![docker pulls](https://badgen.net/docker/pulls/staphb/mummer)](https://hub.docker.com/r/staphb/mummer) | | https://github.com/mummer4/mummer | | [Mykrobe + Genotyphi](https://hub.docker.com/r/staphb/mykrobe)
[![docker pulls](https://badgen.net/docker/pulls/staphb/mykrobe)](https://hub.docker.com/r/staphb/mykrobe) | | https://github.com/Mykrobe-tools/mykrobe
https://github.com/katholt/genotyphi | | [NanoPlot](https://hub.docker.com/r/staphb/nanoplot)
[![docker pulls](https://badgen.net/docker/pulls/staphb/nanoplot)](https://hub.docker.com/r/staphb/nanoplot) | | https://github.com/wdecoster/NanoPlot | +| [ncov-recombinant](https://hub.docker.com/r/staphb/nanoplot)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ncov-recombinant)](https://hub.docker.com/r/staphb/ncov-recombinant) | | https://github.com/ktmeaton/ncov-recombinant | | [ngmaster](https://hub.docker.com/r/staphb/ngmaster)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ngmaster)](https://hub.docker.com/r/staphb/ngmaster) | | https://github.com/MDU-PHL/ngmaster | | [NCBI AMRFinderPlus](https://hub.docker.com/r/staphb/ncbi-amrfinderplus)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ncbi-amrfinderplus)](https://hub.docker.com/r/staphb/ncbi-amrfinderplus) | | [https://github.com/ncbi/amr](https://github.com/ncbi/amr) | | [OrthoFinder](https://hub.docker.com/r/staphb/OrthoFinder)
[![docker pulls](https://badgen.net/docker/pulls/staphb/orthofinder)](https://hub.docker.com/r/staphb/orthofinder) | | https://github.com/davidemms/OrthoFinder | From bd8420325811c07a6a1791469953d685431a2e69 Mon Sep 17 00:00:00 2001 From: whottel <30357265+whottel@users.noreply.github.com> Date: Tue, 7 Feb 2023 17:13:43 -0600 Subject: [PATCH 4/7] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 040ce723b..d85d3fec5 100644 --- a/README.md +++ b/README.md @@ -188,3 +188,4 @@ 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) From 16ca1e31ebe4417299144a227d272c9c923b78c2 Mon Sep 17 00:00:00 2001 From: whottel <30357265+whottel@users.noreply.github.com> Date: Tue, 7 Feb 2023 17:23:49 -0600 Subject: [PATCH 5/7] Update Program_Licenses.md --- Program_Licenses.md | 1 + 1 file changed, 1 insertion(+) diff --git a/Program_Licenses.md b/Program_Licenses.md index 64c9ab0ee..3e9156c3c 100644 --- a/Program_Licenses.md +++ b/Program_Licenses.md @@ -70,6 +70,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 | | ngmaster | GNU GPLv3 | https://github.com/MDU-PHL/ngmaster/blob/master/LICENSE | | OrthoFinder | GNU GPLv3 | https://github.com/davidemms/OrthoFinder/blob/master/License.md | From fd356f3bcd76e23b2e88e7b705617fc574db3776 Mon Sep 17 00:00:00 2001 From: whottel <30357265+whottel@users.noreply.github.com> Date: Thu, 9 Feb 2023 17:07:50 -0600 Subject: [PATCH 6/7] Update Dockerfile --- ncov-recombinant/0.6.1/Dockerfile | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/ncov-recombinant/0.6.1/Dockerfile b/ncov-recombinant/0.6.1/Dockerfile index 1b1487d2d..12eb3acea 100644 --- a/ncov-recombinant/0.6.1/Dockerfile +++ b/ncov-recombinant/0.6.1/Dockerfile @@ -1,5 +1,6 @@ +ARG ncov_recombinant_version='0.6.1' FROM mambaorg/micromamba:0.24.0 as app - +ARG ncov_recombinant_version USER root WORKDIR / @@ -8,7 +9,7 @@ WORKDIR / LABEL base.image="FROM mambaorg/micromamba:0.24.0" LABEL dockerfile.version="1" LABEL software="ncov-recombinant" -LABEL software.version="v0.6.1" +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" @@ -16,17 +17,19 @@ LABEL maintainer="Wes Hottel" LABEL maintainer.email="wesley-hottel@uiowa.edu" #Install dependencies -RUN apt-get update && apt-get install -y python \ +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 git clone https://github.com/ktmeaton/ncov-recombinant.git &&\ -cd ncov-recombinant +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/workflow/envs/environment.yaml &&\ +RUN micromamba create -n ncov-recombinant-env -f /ncov-recombinant-${ncov_recombinant_version}/workflow/envs/environment.yaml &&\ micromamba clean -a -y #Set environment @@ -37,10 +40,13 @@ WORKDIR /data #Test install using postive controls included as part of repo FROM app as test +ARG ncov_recombinant_version -WORKDIR /ncov-recombinant +WORKDIR /ncov-recombinant-${ncov_recombinant_version} ENV ENV_NAME="ncov-recombinant-env" ARG MAMBA_DOCKERFILE_ACTIVATE=1 -RUN snakemake --profile /ncov-recombinant/profiles/controls-positive +RUN snakemake --profile /ncov-recombinant-${ncov_recombinant_version}/profiles/controls-positive + +WORKDIR /data From 9d51c24bdb9c3d7ef9182f8bbd6f71d25649919c Mon Sep 17 00:00:00 2001 From: whottel <30357265+whottel@users.noreply.github.com> Date: Thu, 9 Feb 2023 17:12:45 -0600 Subject: [PATCH 7/7] Update README.md --- ncov-recombinant/0.6.1/README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ncov-recombinant/0.6.1/README.md b/ncov-recombinant/0.6.1/README.md index f84ffd857..6e83dfa6b 100644 --- a/ncov-recombinant/0.6.1/README.md +++ b/ncov-recombinant/0.6.1/README.md @@ -8,8 +8,11 @@ This tool: 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 --profile /ncov-recombinant/profiles/controls +snakemake --directory WORKDIR --profile /ncov-recombinant/profiles/controls ```