diff --git a/Program_Licenses.md b/Program_Licenses.md
index 40d33b498..cc8048baa 100644
--- a/Program_Licenses.md
+++ b/Program_Licenses.md
@@ -95,6 +95,7 @@ The licenses of the open-source software that is contained in these Docker image
| Kraken2 | MIT | https://github.com/DerrickWood/kraken2/blob/master/LICENSE |
| KrakenTools | GNU GPLv3 | https://github.com/jenniferlu717/KrakenTools/blob/master/LICENSE |
| KrakenUniq | GNU GPLv3 | https://github.com/fbreitwieser/krakenuniq/blob/master/LICENSE |
+| Krona | non-standard license (see link) | https://github.com/marbl/Krona/blob/master/KronaTools/LICENSE.txt |
| kSNP3 | BSD | available in zipped kSNP archive on sourceforge or in docker image under `/kSNP3.1_Linux_package/THE BSD OPENSOURCE LICENSE.pdf` |
| kSNP4 | BSD | available in zipped kSNP archive on sourceforge or in docker image under `/opt/kSNP4 Linux package/Documentation/THE BSD OPENSOURCE LICENSE.pdf` |
| LABEL | GPL version 3 | In zipped file in README.md |
diff --git a/README.md b/README.md
index 8a685aea0..bb54c9027 100644
--- a/README.md
+++ b/README.md
@@ -205,6 +205,7 @@ To learn more about the docker pull rate limits and the open source software pro
| [Kraken2](https://hub.docker.com/r/staphb/kraken2/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/kraken2)](https://hub.docker.com/r/staphb/kraken2) |
- 2.0.8-beta (no database)
- 2.0.8-beta (MiniKraken2_v1_8GB db)
- 2.0.8-beta_hv (human + virus db)
- 2.0.9-beta (no db)
- 2.0.9-beta (Minikraken v2 RefSeq: bacteria, archaea, viral, and human 8GB db)
- 2.1.0 (no db)
- 2.1.1 (no db)
- 2.1.2 (no db)
- [2.1.3](kraken2/2.1.3/) (no db)
| https://github.com/DerrickWood/kraken2 |
| [KrakenTools](https://github.com/jenniferlu717/KrakenTools)
[![docker pulls](https://badgen.net/docker/pulls/staphb/krakentools)](https://hub.docker.com/r/staphb/krakentools) | - [d4a2fbe](./krakentools/d4a2fbe)
| https://github.com/jenniferlu717/KrakenTools |
| [KrakenUniq](https://hub.docker.com/r/staphb/krakenuniq/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/krakenuniq)](https://hub.docker.com/r/staphb/krakenuniq) | - [1.0.4](./krakenuniq/1.0.4) (no database)
| https://github.com/fbreitwieser/krakenuniq |
+| [Krona](https://hub.docker.com/r/staphb/krona/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/krona)](https://hub.docker.com/r/staphb/krona) | - [2.8.1](./build-files/krona/2.8.1)
| https://github.com/marbl/Krona |
| [kSNP3](https://hub.docker.com/r/staphb/ksnp3/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ksnp3)](https://hub.docker.com/r/staphb/ksnp3)| | https://sourceforge.net/projects/ksnp/ |
| [kSNP4](https://hub.docker.com/r/staphb/ksnp4/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ksnp4)](https://hub.docker.com/r/staphb/ksnp4)| | https://sourceforge.net/projects/ksnp/ |
| [label](https://hub.docker.com/r/staphb/label/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/label)](https://hub.docker.com/r/staphb/label)| | https://wonder.cdc.gov/amd/flu/label |
diff --git a/build-files/krona/2.8.1/Dockerfile b/build-files/krona/2.8.1/Dockerfile
new file mode 100644
index 000000000..110cebb44
--- /dev/null
+++ b/build-files/krona/2.8.1/Dockerfile
@@ -0,0 +1,66 @@
+FROM ubuntu:jammy AS app
+
+ARG KRONA_VER="2.8.1"
+ARG KRAKENTOOLS_COMMIT="d4a2fbe2833c2392a724697c0c97a3014e748474"
+
+USER root
+
+WORKDIR /
+
+LABEL base.image="ubuntu:jammy"
+LABEL dockerfile.version="1"
+LABEL software="krona"
+LABEL software.version="${KRONA_VER}"
+LABEL description="Krona Tools is a set of scripts to create Krona charts from several Bioinformatics tools as well as from text and XML files."
+LABEL website="https://github.com/marbl/Krona"
+LABEL license="https://github.com/marbl/Krona/blob/master/KronaTools/LICENSE.txt"
+LABEL maintainer="Sage Wright"
+LABEL maintainer.email="sagemwright@gmail.com"
+
+# 'LABEL' instructions tag the image with metadata that might be important to the user
+RUN apt-get update && apt-get install -y --no-install-recommends \
+ wget \
+ ca-certificates \
+ curl \
+ perl \
+ unzip \
+ python3 \
+ python-is-python3 \
+ python3-pip \
+ python3-setuptools \
+ make \
+ procps && \
+ apt-get autoclean && rm -rf /var/lib/apt/lists/*
+
+ENV PATH="/root/miniconda3/bin:$PATH"
+
+RUN wget https://github.com/marbl/Krona/releases/download/v${KRONA_VER}/KronaTools-${KRONA_VER}.tar && \
+ tar -xvf KronaTools-${KRONA_VER}.tar && \
+ rm KronaTools-${KRONA_VER}.tar && \
+ mv KronaTools-${KRONA_VER} KronaTools && \
+ cd KronaTools && \
+ ./install.pl
+
+RUN pip install biopython==1.84 \
+ pandas==2.2.3
+
+ARG KRAKENTOOLS_COMMIT="d4a2fbe2833c2392a724697c0c97a3014e748474"
+
+RUN wget https://github.com/jenniferlu717/KrakenTools/archive/${KRAKENTOOLS_COMMIT}.zip && \
+ unzip ${KRAKENTOOLS_COMMIT}.zip && \
+ mv KrakenTools-${KRAKENTOOLS_COMMIT} KrakenTools && \
+ chmod +x KrakenTools/*
+
+ENV PATH=/KrakenTools:${PATH}
+
+WORKDIR /data
+
+CMD ["ktImportTaxonomy"]
+
+FROM app AS test
+
+RUN combine_kreports.py -h
+
+RUN extract_kraken_reads.py --help
+RUN ktImportTaxonomy
+
diff --git a/build-files/krona/2.8.1/README.md b/build-files/krona/2.8.1/README.md
new file mode 100644
index 000000000..5f630a4c2
--- /dev/null
+++ b/build-files/krona/2.8.1/README.md
@@ -0,0 +1,69 @@
+
+# Krona container
+
+Main tool: [Krona](https://github.com/marbl/Krona)
+
+Code repository:
+
+Additional tools:
+
+- krona 2.8.1
+- krakentools d4a2fbe
+- pandas 2.2.3
+- biopython 1.84
+
+Basic information on how to use this tool:
+
+- executables:
+ - KronaTools (available as tab-completed executables):
+ - ktClassifyBLAST
+ - ktGetTaxInfo
+ - ktImportGalaxy
+ - ktImportPhymmBL
+ - ktImportXML
+ - ktGetContigMagnitudes
+ - ktImportBLAST
+ - ktImportKrona
+ - ktImportRDP
+ - ktGetLCA
+ - ktImportDiskUsage
+ - ktImportMETAREP-BLAST
+ - ktImportRDPComparison
+ - ktGetLibPath
+ - ktImportEC
+ - ktImportMETAREP-EC
+ - ktImportTaxonomy
+ - ktGetTaxIDFromAcc
+ - ktImportFCP
+ - ktImportMGRAST
+ - ktImportText
+ - KrakenTools (within the /KrakenTools directory):
+ - combine_kreports.py
+ - combine_mpa.py
+ - extract_kraken_reads.py
+ - filter_bracken.out.py
+ - fix_unmapped.py
+ - **kreport2krona.py** (of special interest to this image)
+ - kreport2mpa.py
+ - make_kreport.py
+ - make_ktaxonomy.py
+ - DiversityTools/alpha_diversity.py
+ - DiversityTools/beta_diversity.py
+- help: provide the tool name without any arguments to see the help message (``)
+- version: Versioning information is available within the help message and can be retrieved with the following grep command ` | grep "KronaTools" | cut -d' ' -f3`
+- description: "Krona allows hierarchical data to be explored with zooming, multi-layered pie charts... The interactive charts are self-contained and can be viewed with any modern web browser."
+
+Additional information: This container also contains [KrakenTools](https://github.com/jenniferlu717/KrakenTools), which provides a way for Krona plots to be generated for viral data.
+
+Full documentation: [https://github.com/marbl/Krona](https://github.com/marbl/Krona/wiki)
+
+## Example Usage
+
+```bash
+# run Krona without preprocessing of the kraken output by Krakentools -- viral data will be considered "other root" but bacterial data will be visualized
+ktImportTaxonomy MYSAMPLE.kraken_output_report -o MYSAMPLE.krona.hmtl -tax taxonomy
+
+# run Krona with preprocessing of the kraken output by KrakenTools in order to visualize viral data properly
+python3 /KrakenTools/kreport2krona.py -r MYSAMPLE.kraken_output_report -o MYSAMPLE.krona
+ktImportText MYSAMPLE.krona -o MYSAMPLE.krona.html
+```