-
Notifications
You must be signed in to change notification settings - Fork 126
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding kleborate version 3.1.2 (#1092)
* adding kleborate version 3.0.0 * adding kleborate version 3.1.2 * removed extra comments * removed git * fixed extra path * silenced some warnings; updated some comments; updated CMD to recommended format; uninstall old version of mash installed automatically via pypi since we install it manually * removed inaccurate comment --------- Co-authored-by: Curtis Kapsak <[email protected]>
- Loading branch information
Showing
3 changed files
with
153 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
FROM ubuntu:jammy AS app | ||
|
||
# for easy upgrade later. ARG variables only persist during image build time | ||
ARG KLEBORATE_VER="3.1.2" | ||
ARG MINIMAP2_VER="2.28" | ||
ARG MASH_VER="2.3" | ||
|
||
LABEL base.image="ubuntu:jammy" | ||
LABEL dockerfile.version="1" | ||
LABEL software="Kleborate" | ||
LABEL software.version="${KLEBORATE_VER}" | ||
LABEL description="tool to screen genome assemblies of Klebsiella pneumoniae and the Klebsiella pneumoniae species complex (KpSC)" | ||
LABEL website="https://github.com/katholt/Kleborate" | ||
LABEL license="https://github.com/katholt/Kleborate/blob/master/LICENSE" | ||
LABEL maintainer="Curtis Kapsak" | ||
LABEL maintainer.email="[email protected]" | ||
LABEL maintainer2="Frank Ambrosio" | ||
LABEL maintainer2.email="[email protected]" | ||
LABEL maintainer3="Erin Young" | ||
LABEL maintainer3.email="[email protected]" | ||
|
||
# install prerequisites. Cleanup apt garbage | ||
RUN apt-get update && apt-get install -y --no-install-recommends \ | ||
python3 \ | ||
python3-pip \ | ||
wget \ | ||
ca-certificates \ | ||
bzip2 \ | ||
procps \ | ||
curl && \ | ||
rm -rf /var/lib/apt/lists/* && apt-get autoclean | ||
|
||
# mash; update UID and GID of mash files; make /data | ||
# UID and GID changes because the original owner is UID: 1081147385 and GID: 1360859114 which does NOT play well with systems that limits GIDs and UIDs | ||
RUN wget -q https://github.com/marbl/Mash/releases/download/v${MASH_VER}/mash-Linux64-v${MASH_VER}.tar && \ | ||
tar -xvf mash-Linux64-v${MASH_VER}.tar --no-same-owner && \ | ||
rm -rf mash-Linux64-v${MASH_VER}.tar && \ | ||
chown root:root /mash-Linux64-v${MASH_VER}/* | ||
|
||
# install minimap2 binary | ||
RUN curl -L https://github.com/lh3/minimap2/releases/download/v${MINIMAP2_VER}/minimap2-${MINIMAP2_VER}_x64-linux.tar.bz2 | \ | ||
tar -jxvf - --no-same-owner | ||
|
||
# set PATH | ||
ENV PATH="/mash-Linux64-v${MASH_VER}:/minimap2-${MINIMAP2_VER}_x64-linux:${PATH}" | ||
|
||
# install kleborate; uninstall mash (that comes with kleborate via pypi, see: https://github.com/klebgenomics/Kleborate/issues/90); make /data | ||
RUN pip install --no-cache-dir kleborate==${KLEBORATE_VER} && \ | ||
pip uninstall mash -y && \ | ||
mkdir /data | ||
|
||
# set working directory | ||
WORKDIR /data | ||
|
||
CMD [ "kleborate", "--help" ] | ||
|
||
FROM app AS test | ||
|
||
WORKDIR /test | ||
|
||
# from https://kleborate.readthedocs.io/en/latest/Installation.html | ||
RUN wget -q https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/002/813/595/GCF_002813595.1_ASM281359v1/GCF_002813595.1_ASM281359v1_genomic.fna.gz && \ | ||
kleborate -a GCF_002813595.1_ASM281359v1_genomic.fna.gz -o kleborate_test -p kpsc && \ | ||
head kleborate_test/klebsiella_pneumo_complex_output.txt | ||
|
||
# print help and version info | ||
RUN kleborate --help && kleborate --version && kleborate --list_modules |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
# Kleborate container | ||
|
||
Main tool : [Kleborate](https://github.com/katholt/Kleborate) | ||
|
||
:warning: **Note:** Kleborate v3 is different from v2, please see here for the differences: https://kleborate.readthedocs.io/en/latest/index.html#changes-from-v2 | ||
|
||
Additional tools: | ||
|
||
- [mash](https://github.com/marbl/Mash) version 2.3 | ||
- [minimap2](https://github.com/lh3/minimap2) version 2.28 | ||
- [kaptive](https://github.com/klebgenomics/Kaptive) version 3.0.0b6 | ||
- biopython 1.84 | ||
- dna-features-viewer 3.1.3 | ||
- matplotlib 3.9.2 | ||
- numpy 2.1.3 | ||
|
||
Full documentation: [https://github.com/katholt/Kleborate/wiki](https://github.com/katholt/Kleborate/wiki) | ||
|
||
Description: | ||
> Kleborate is a tool to screen genome assemblies of Klebsiella pneumoniae and the Klebsiella pneumoniae species complex (KpSC) for: | ||
> | ||
> - MLST sequence type | ||
> - species (e.g. K. pneumoniae, K. quasipneumoniae, K. variicola, etc.) | ||
> - ICEKp associated virulence loci: yersiniabactin (ybt), colibactin (clb), salmochelin (iro), hypermucoidy (rmpA) | ||
> - virulence plasmid associated loci: salmochelin (iro), aerobactin (iuc), hypermucoidy (rmpA, rmpA2) | ||
> - antimicrobial resistance determinants: acquired genes, SNPs, gene truncations and intrinsic β-lactamases | ||
> - K (capsule) and O antigen (LPS) serotype prediction, via wzi alleles and Kaptive | ||
## Included models | ||
|
||
Kleborate has models for both Klebsiella and Escherichia species. The available presets and models are listed below. | ||
|
||
Available presets: kpsc, kosc, escherichia | ||
|
||
``` | ||
Available modules for Kleborate | ||
------------------------------- | ||
enterobacterales__species: Mash-based species detection for enterobacterales species | ||
escherichia__mlst_achtman: chromosomal MLST for Escherichia coli using the Achtman scheme | ||
escherichia__mlst_pasteur: chromosomal MLST for Escherichia coli using the Pasteur scheme | ||
general__contig_stats: basic stats on the assembly's contigs | ||
klebsiella__abst: MLST on the KpSC aerobactin locus (iuc genes) | ||
klebsiella__cbst: MLST on the KpSC colibactin locus (clb genes) | ||
klebsiella__rmpa2: typing for the rmpA2 gene | ||
klebsiella__rmst: MLST on the KpSC Rmp locus (rmp genes) | ||
klebsiella__smst: MLST on the KpSC salmochelin locus (iro genes) | ||
klebsiella__ybst: MLST on the KpSC yersiniabactin locus (ybt and irp genes) | ||
klebsiella_oxytoca_complex__mlst: chromosomal MLST for the Klebsiella oxytoca species complex | ||
klebsiella_pneumo_complex__amr: Genotyping acquired genes and mutations for the Klebsiella pneumoniae species complex | ||
klebsiella_pneumo_complex__kaptive: In silico serotyping of K and L locus for the Klebsiella pneumoniae species complex | ||
klebsiella_pneumo_complex__mlst: chromosomal MLST for the Klebsiella pneumoniae species complex | ||
klebsiella_pneumo_complex__resistance_class_count: Resistance gene classes count, excluding the Bla_chr class which is intrinsicresults of the | ||
klebsiella_pneumo_complex__amr module | ||
klebsiella_pneumo_complex__resistance_gene_count: Resistance genes counts, excluding the Bla class which is intrinsicresults of the | ||
klebsiella_pneumo_complex__amr module | ||
klebsiella_pneumo_complex__resistance_score: resistance score (0-3) for the Klebsiella pneumoniae species complex, based on the results of the | ||
klebsiella_pneumo_complex__amr module | ||
klebsiella_pneumo_complex__virulence_score: virulence score (0-5) for the Klebsiella pneumoniae species complex, based on the results of the abst, cbst | ||
and ybst modules | ||
klebsiella_pneumo_complex__wzi: WZI typing for K antigen prediction | ||
``` | ||
|
||
## Example Usage | ||
|
||
```bash | ||
kleborate -a sample.fasta -o outdir -p preset | ||
``` |