docker.md

July 10, 2026 ยท View on GitHub

Docker

We provide 2 images based on pandoc/latex:2.18-alpine in gabyxgabyx/technical-markdown:

  1. gabyxgabyx/technical-markdown:latest-minimal : Minimal docker images including pandoc and all necessary tools to fully build your markdown. It does not include the folder tools and convert and your mounted Git repository needs to contain these as in this repository or by setting the environment variables described below. This is useful if you want to tweak the layout and styling of the document.
  2. gabyxgabyx/technical-markdown:latest : The full-fledged image which is used in this VS Code .devcontainer setup. It contains its baked tools and tools/convert folders which are used to compile your markdown.

The <version> above corresponds to either latest or the Git version tag minus the v prefix.

Environment Variables

Numbers refer to the container images above:

Env. NameDefault ValueDescription
TECHMD_TOOLS_DIR1. not setThe tools directory containing all files needed for the conversion.
2 . /home/techmd/technical-markdown/tools
TECHMD_CONVERT_DIR1. not setThe convert directory containing the files needed for the pandoc conversion.
2 . /home/techmd/technical-markdown/tools/convert
TECHMD_USE_SYSTEM_NODE1. trueUse the node installation on the system instead of installing a local one into the build folder
2. true

Using the Docker Image

Either copy the .devontainer to your project (you don't need the tools folder) and open the project in the VS Code remote container extension.

Alternatively you can always use:

docker run -v "<path-to-your-repo>:/workspace" \
    gabyxgabyx/technical-markdown:latest"
    ./gradlew build-html

Extending the Technical-Markdown Docker Images

If you need special other tools and another setup which might be useful for the general images above, consider submitting an issue. Otherwise you can always extend the existing images for layout/styling changes with another Dockerfile like:

FROM gabyxgabyx/technical-markdown:latest-minimal as mycustomtechmd
// More Dockerfile commands ...

Building the Technical-Markdown Docker Images

To build the images in this repository for customization use:

tools/docker/build.sh \
    --base-name "mycustomimage" \
    [--push-base-name "docker.io/superuser"] \
    [--push]