diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..1c7c68d
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,16 @@
+FROM python:3.11-slim
+
+WORKDIR /sp_cont
+
+RUN apt-get update && apt-get install -y build-essential git && rm -rf /var/lib/apt/lists/*
+
+COPY pyproject.toml ./
+COPY src/ ./src/
+COPY README.md ./
+
+# Install the package using pip (setuptools will be used automatically)
+RUN pip install .
+
+# Entrypoint for the container -> If set all CLI commands can be directly used
+ENTRYPOINT ["specimen"]
+CMD ["-h"]
\ No newline at end of file
diff --git a/README.md b/README.md
index 03ebe7a..dc789b1 100644
--- a/README.md
+++ b/README.md
@@ -14,8 +14,9 @@
SPECIMEN is a collection of different workflows designed for the automated and standardised curation of genome-scale models. It is mainly based on the [refineGEMs toolbox](https://github.com/draeger-lab/refinegems/tree/main), but also includes additional tools like [CarveMe](https://carveme.readthedocs.io/en/latest/).
-> Note:
- This tool is currently still under active developement, any feedback or ideas are welcome. Also, since its developemental, please note that bugs and error will probably occur. Please feel free to report them to the developers.
+> [!NOTE]
+> This tool is currently still under active developement, any feedback or ideas are welcome. Also, since its
+> developemental, please note that bugs and errors will probably occur. Please feel free to report them to the developers.
Currently avaible workflow:
@@ -23,28 +24,94 @@ Currently avaible workflow:
- HQTB - High-quality template based:\\This pipeline follows the modelling approach of using a high-quality template model as a basis for the reconstruction of a new model from a new genome (e.g. a different strain).
-> Note: Due to some major refactoring changes in refineGEMs this workflow might not run as expected.
+> [!NOTE]
+> Due to some major refactoring changes in refineGEMs this workflow might not run as expected.
- PGAB: under construction
+
+
+- [SPECIMEN](#specimen)
+ - [Installation](#installation)
+ - [pypi Via pip](#pypi-via-pip)
+ - [docker Via Docker](#docker-via-docker)
+ - [Quickstart](#quickstart)
+ - [pypi After install via pip](#pypi-after-install-via-pip)
+ - [docker After install via Docker](#docker-after-install-via-docker)
+ - [Documentation](#documentation)
+ - [Repositories using SPECIMEN](#repositories-using-specimen)
+
+
+
## Installation
+The workflow collection ``SPECIMEN``can be installed via pip or via Docker.
+
+###  Via pip
Download this repository and run the command `pip install -e .` inside the top-level directory.
When running certain steps, further tools need to be installed:
-- [DIAMOND, version 2.0.4 or higher](https://github.com/bbuchfink/diamond), needed for GeneGapFiller and HQTB
+- [DIAMOND, version 2.0.4 or higher](https://github.com/bbuchfink/diamond)
- [EntrezDirect](https://www.ncbi.nlm.nih.gov/books/NBK179288/), if no NCBI mapping has been created beforehand
+###  Via Docker
+``SPECIMEN`` can also be used via Docker. To build the docker image, firtsly clone the repository:
+
+```bash
+ git clone "https://github.com/draeger-lab/specimen.git"
+```
+
+Then change into the directory and build the image:
+
+```bash
+ cd specimen \
+ docker build -t specimen .
+```
+
## Quickstart
+###  After install via pip
+
After the installation, main functionalities can be accessed either via the command line. Try running `specimen --help` for more information.
For greater control or for further integration into other scripts, the modules of SPECIMEN can be loaded as a Python package using `import specimen` in a Python script.
+###  After install via Docker
+
+> [!NOTE]
+> To provide the input files and retrieve the output files mount one folder as workspace folder to the Docker image with `-v`.
+
+The default command executed by the image is ``specimen -h`` and provides the help information for the CLI of
+``SPECIMEN``.
+
+```bash
+ docker run specimen
+```
+
+To use the image interactively and open a bash shell, run the following command:
+
+```bash
+ docker run -it --entrypoint bash specimen
+```
+
+To use the image for specific commands, you can simply use every of the CLI commands as entrypoint.
+For example, to run the CMPB pipeline, use:
+
+```bash
+ docker run --name -v :/sp_cont specimen cmpb run ./path/to/CMPB_config.yaml
+```
+
## Documentation
> [!WARNING]
> 🚧 The documentation is currently under heavy-rework!
For more information about the available pipelines, the code or for troubleshooting, please refer to the documentation of the tool [here](https://specimen.readthedocs.io/en/latest/).
+
+## Repositories using SPECIMEN
+- draeger-lab/Cacnes - `private`
+- draeger-lab/Cgranulosum - `private`
+- draeger-lab/Koxytoca - `private`
+- draeger-lab/Mfortuitum - `private`
+- draeger-lab/Scohnii - `private`
diff --git a/docs/source/installation.rst b/docs/source/installation.rst
index b35a2db..b1c1474 100644
--- a/docs/source/installation.rst
+++ b/docs/source/installation.rst
@@ -1,8 +1,8 @@
Installation
==============
-Installation via github
------------------------
+Installation via GitHub/pip
+---------------------------
Download the ``SPECIMEN`` repository `here `_
and run the command :code:`pip install -e .` inside the top-level directory.
@@ -23,6 +23,49 @@ For all options to run error-free, the following tools need to be installed addi
Afterwards, ``SPECIMEN`` can either be accessed via the command line or via importing the package into a Python script.
+``SPECIMEN`` can also be used via Docker. To build the docker image, firtsly clone the repository:
+
+.. code:: console
+ :class: copyable
+
+ git clone "https://github.com/draeger-lab/specimen.git"
+
+Then change into the directory and build the image:
+
+.. code:: console
+ :class: copyable
+
+ cd specimen \
+ docker build -t specimen .
+
+.. note::
+
+ To provide the input files and retrieve the output files mount one folder as workspace folder to the Docker image
+ with `-v`.
+
+The default command executed by the image is ``specimen -h`` and provides the help information for the CLI of
+``SPECIMEN``.
+
+.. code:: console
+ :class: copyable
+
+ docker run specimen
+
+To use the image interactively and open a bash shell, run the following command:
+
+.. code:: console
+ :class: copyable
+
+ docker run -it --entrypoint bash specimen
+
+To use the image for specific commands, you can simply use every of the CLI commands as entrypoint.
+For example, to run the CMPB pipeline, use:
+
+.. code:: console
+ :class: copyable
+
+ docker run --name -v :/sp_cont specimen cmpb run ./path/to/CMPB_config.yaml
+
.. hint::
It is advised to install ``SPECIMEN`` inside a conda environment with a Python version of 3.10 or higher.
diff --git a/pyproject.toml b/pyproject.toml
index 901a154..dd87f03 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -36,7 +36,7 @@ dependencies = [
# @NOTE
# need to installed but install does not work with PyPi that way
"bofdat@git+https://github.com/draeger-lab/BOFdat", # our fork with hot fix(es)
- "masschargecuration@git+https://github.com/Biomathsys/MassChargeCuration",
+ "masschargecuration@git+https://github.com/draeger-lab/MassChargeCuration",
"model-polisher@git+https://github.com/draeger-lab/MPClient.git"
]