diff --git a/README.md b/README.md
index bda448883..bd86457ff 100644
--- a/README.md
+++ b/README.md
@@ -243,7 +243,7 @@ To learn more about the docker pull rate limits and the open source software pro
| [polypolish](https://hub.docker.com/r/staphb/polypolish/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/polypolish)](https://hub.docker.com/r/staphb/polypolish) |
- [0.5.0](./polypolish/0.5.0/)
- [0.6.0](./polypolish/0.6.0/)
| https://github.com/rrwick/Polypolish |
| [PopPUNK](https://hub.docker.com/r/staphb/poppunk/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/poppunk)](https://hub.docker.com/r/staphb/poppunk) | - [2.4.0](./poppunk/2.4.0/)
- [2.5.0](./poppunk/2.5.0/)
- [2.6.0](./poppunk/2.6.0/)
- [2.6.2](./poppunk/2.6.2/)
- [2.6.3](./poppunk/2.6.3/)
- [2.6.5](./poppunk/2.6.5/)
| https://github.com/bacpop/PopPUNK |
| [Porechop](https://hub.docker.com/r/staphb/porechop/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/porechop)](https://hub.docker.com/r/staphb/porechop) | | https://github.com/rrwick/Porechop |
-| [PPanGGOLiN](https://hub.docker.com/r/staphb/ppanggolin/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ppanggolin)](https://hub.docker.com/r/staphb/ppanggolin) | - [1.2.105](./ppanggolin/1.2.105/)
- [2.0.3](./ppanggolin/2.0.3/)
- [2.0.5](./ppanggolin/2.0.5/)
| https://github.com/labgem/PPanGGOLiN |
+| [PPanGGOLiN](https://hub.docker.com/r/staphb/ppanggolin/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ppanggolin)](https://hub.docker.com/r/staphb/ppanggolin) | - [1.2.105](./ppanggolin/1.2.105/)
- [2.0.3](./ppanggolin/2.0.3/)
- [2.0.5](./ppanggolin/2.0.5/)
- [2.1.2](./ppanggolin/2.1.2/)
| https://github.com/labgem/PPanGGOLiN |
| [Prokka](https://hub.docker.com/r/staphb/prokka/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/prokka)](https://hub.docker.com/r/staphb/prokka) | | https://github.com/tseemann/prokka |
| [pyCirclize](https://hub.docker.com/r/staphb/pycirclize/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/pycirclize)](https://hub.docker.com/r/staphb/pycirclize) | - [1.0.0](pycirclize/1.0.0/)
- [1.2.0](./pycirclize/1.2.0/)
- [1.5.0](./pycirclize/1.5.0/)
- [1.6.0](./pycirclize/1.6.0/)
| https://github.com/moshi4/pyCirclize |
| [pyGenomeViz](https://hub.docker.com/r/staphb/pygenomeviz/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/pygenomeviz)](https://hub.docker.com/r/staphb/pygenomeviz) | - 0.2.2
- 0.3.2
- [0.4.2](pygenomeviz/0.4.2/)
- [0.4.3](pygenomeviz/0.4.3/)
- [0.4.4](pygenomeviz/0.4.4/)
- [1.1.0](pygenomeviz/1.1.0/)
| https://github.com/moshi4/pyGenomeViz |
diff --git a/ppanggolin/2.1.2/Dockerfile b/ppanggolin/2.1.2/Dockerfile
new file mode 100644
index 000000000..c8a7fe3f8
--- /dev/null
+++ b/ppanggolin/2.1.2/Dockerfile
@@ -0,0 +1,53 @@
+ARG PPANGGOLIN_VER="2.1.2"
+
+FROM mambaorg/micromamba:1.5.8 as app
+
+ARG PPANGGOLIN_VER
+
+# 'LABEL' instructions tag the image with metadata that might be important to the user
+LABEL base.image="mambaorg/micromamba:1.5.8"
+LABEL dockerfile.version="1"
+LABEL software="PPanGGOLiN"
+LABEL software.version="${PPANGGOLIN_VER}"
+LABEL description="Depicting microbial species diversity via a Partitioned PanGenome Graph Of Linked Neighbors"
+LABEL website="https://github.com/labgem/PPanGGOLiN"
+LABEL license="https://github.com/labgem/PPanGGOLiN/blob/master/LICENSE.txt"
+LABEL maintainer="Erin Young"
+LABEL maintainer.email="eriny@utah.gov"
+
+USER root
+
+RUN apt-get update && apt-get install -y --no-install-recommends \
+ ca-certificates \
+ procps \
+ wget && \
+ apt-get autoclean && rm -rf /var/lib/apt/lists/*
+
+ENV PATH="/opt/conda/envs/base/bin/:/opt/conda/bin/:$PATH" LC_ALL=C
+
+RUN micromamba install --name base -c conda-forge -c bioconda -c defaults ppanggolin=${PPANGGOLIN_VER} && \
+ micromamba clean -a -y && \
+ ppanggolin -h && \
+ mkdir /data
+
+# 'CMD' instructions set a default command when the container is run. This is typically 'tool --help.'
+CMD ppanggolin -h
+
+# 'WORKDIR' sets working directory
+WORKDIR /data
+
+FROM app as test
+
+ARG PPANGGOLIN_VER
+
+WORKDIR /test
+
+RUN ppanggolin --help && \
+ ppanggolin --version
+
+# getting test files from github repo
+RUN wget -q https://github.com/labgem/PPanGGOLiN/archive/refs/tags/${PPANGGOLIN_VER}.tar.gz && \
+ tar -xvf ${PPANGGOLIN_VER}.tar.gz
+
+RUN cd PPanGGOLiN-${PPANGGOLIN_VER}/testingDataset && \
+ ppanggolin all --fasta genomes.fasta.list --output output
diff --git a/ppanggolin/2.1.2/README.md b/ppanggolin/2.1.2/README.md
new file mode 100644
index 000000000..ad910731d
--- /dev/null
+++ b/ppanggolin/2.1.2/README.md
@@ -0,0 +1,33 @@
+# PPanGGOLiN container
+
+Main tool: [PPanGGOLiN](https://github.com/labgem/PPanGGOLiN)
+
+Code repository: https://github.com/labgem/PPanGGOLiN
+
+Basic information on how to use this tool:
+- executable: ppanggolin
+- help: --help
+- version: --version
+- description: |
+> PPanGGOLiN builds pangenomes through a graphical model and a statistical method to partition gene families in persistent, shell and cloud genomes.
+
+Additional information:
+
+PPanGGOLiN only creates the pangenome graphs. It is recommended to use another tool to visualize them. Please read https://github.com/labgem/PPanGGOLiN/wiki for more information.
+
+Full documentation: https://github.com/labgem/PPanGGOLiN/wiki
+
+## Example Usage
+
+```bash
+ppanggolin annotate --fasta organisms.fasta.list --output output
+
+# many of the commands manipulate the 'pangenome.h5' file in place
+ppanggolin cluster -p pangenome.h5
+ppanggolin graph -p pangenome.h5
+ppanggolin partition -p pangenome.h5
+ppanggolin draw -p pangenome.h5 --ucurve
+
+# there are some human-readable files that can be generated as well
+ppanggolin write -p pangenome.h5 --stats --output stats
+```