Namespace
stirlingtools
Image / Tag
stirling-pdf:2.2.0-fat
Content Digest
sha256:23052be24d20fd4b343965746ed963c11c14ba32e14f93508641d8281195661a
Details
Created

2026-01-09 22:52:29 UTC

Size

1.4 GB

Content Digest
Labels
  • maintainer
    Stirling-Tools
  • org.opencontainers.image.authors
    Stirling-Tools
  • org.opencontainers.image.created
    2026-01-09T22:51:00.766Z
  • org.opencontainers.image.description
    #1 PDF Application on GitHub that lets you edit PDFs on any device anywhere
  • org.opencontainers.image.documentation
    https://docs.stirlingpdf.com
  • org.opencontainers.image.keywords
    PDF, manipulation, fat, air-gapped, API, Spring Boot, React
  • org.opencontainers.image.licenses
    NOASSERTION
  • org.opencontainers.image.revision
    a284dbfc15eb5ecf44d89777ea5f1fafe07da52f
  • org.opencontainers.image.source
    https://github.com/Stirling-Tools/Stirling-PDF
  • org.opencontainers.image.title
    Stirling-PDF
  • org.opencontainers.image.url
    https://github.com/Stirling-Tools/Stirling-PDF
  • org.opencontainers.image.vendor
    Stirling-Tools
  • org.opencontainers.image.version
    2.2.0-fat

Environment
DEBIAN_FRONTEND

noninteractive

FAT_DOCKER

true

HOME

/home/stirlingpdfuser

INSTALL_BOOK_AND_ADVANCED_HTML_OPS

false

JAVA_BASE_OPTS

-XX:+ExitOnOutOfMemoryError -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/configs/heap_dumps -XX:+UnlockExperimentalVMOptions -XX:MaxRAMPercentage=75 -XX:InitiatingHeapOccupancyPercent=20 -XX:+G1PeriodicGCInvokesConcurrent -XX:G1PeriodicGCInterval=10000 -XX:+UseStringDeduplication -XX:G1PeriodicGCSystemLoadThreshold=70 -Djava.awt.headless=true

JAVA_CUSTOM_OPTS

PATH

/opt/venv/bin:/opt/unoserver-venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PGID

1000

PUID

1000

QTWEBENGINE_CHROMIUM_FLAGS

--disable-gpu --disable-dev-shm-usage

QT_QPA_PLATFORM

offscreen

STIRLING_TEMPFILES_DIRECTORY

/tmp/stirling-pdf

TEMP

/tmp/stirling-pdf

TESS_BASE_PATH

/usr/share/tesseract-ocr/5/tessdata

TMP

/tmp/stirling-pdf

TMPDIR

/tmp/stirling-pdf

UMASK

022

UNO_PATH

/usr/lib/libreoffice/program

VERSION_TAG

2.2.0


Layers

[#000] sha256:22b53daa52ced2b98298cac5c75190448b3f5234e94cf769fc56eba934d2af08 - 1.97% (28.4 MB)

[#001] sha256:e1715ff9efb1694de655779ad9d28bb4ca6330f2470212ba483d3513a457f8b2 - 70.51% (1010 MB)

[#002] sha256:8703a9bc8cfab61a860cde855fc12225adc4efdd4d6534687400590584de189d - 0.0% (825 Bytes)

[#003] sha256:1ced7ef807e121721e306273536dceb9d4c19f44186da3408d6e326f0742e89b - 0.0% (3.36 KB)

[#004] sha256:d716bc0e1aad6bead7d1ee0ac29b0bfc1ca47eb8d8d09d551333d1ba0d1d04af - 0.0% (177 Bytes)

[#005] sha256:71fd941a0fcde9c57abb5357a4347abc751cbcd40f65baa557b832a43b1e90dc - 13.8% (198 MB)

[#006] sha256:ae8645d7d1016669dfab7762d0422f6e12488840adb3e06a0cb826a7f763ca04 - 0.0% (3.28 KB)

[#007] sha256:ceb261956dba12cf83e751d2b9342c6fad4147a3bd828708ccddf647b4a3166a - 0.0% (67.7 KB)

[#008] sha256:700f6a3e7d9785580b466e8e887cacd0412806731f99f6d1ca92bcde557b3a5e - 2.12% (30.4 MB)

[#009] sha256:b9f5ad9cfc7f0dd64e79c628ca6bc5c47d5a51ec8120bcee8a2e684686fcdf28 - 6.13% (88.1 MB)

[#010] sha256:b560ab932462f6cab73955381b667f36bcad9b2fcff4bfb45eaa49f0a694e759 - 0.24% (3.42 MB)

[#011] sha256:14a4b2f97048962397afa4667b80702b65724ce30f5538cd091866ae642587dd - 0.0% (195 Bytes)

[#012] sha256:970d050292867d07ccdb20bf569af9e11a5275260a413793e934a5796574f271 - 5.22% (75.1 MB)

[#013] sha256:34380fbec3f5b18e1d2c04f05a7acccc5281fc9353d943fa15155c9f0c67697e - 0.01% (96.2 KB)


History
2025-12-08 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'amd64' out/ 'stable' '@1765152000'

2026-01-09 22:52:14 UTC (buildkit.dockerfile.v0)

SHELL [/bin/bash -o pipefail -c]

2026-01-09 22:52:14 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2026-01-09 22:52:14 UTC (buildkit.dockerfile.v0)

ENV TESS_BASE_PATH=/usr/share/tesseract-ocr/5/tessdata

2026-01-09 22:52:14 UTC (buildkit.dockerfile.v0)

RUN /bin/bash -o pipefail -c apt-get update && apt-get install -y --no-install-recommends ca-certificates tzdata tini bash fontconfig openjdk-21-jre-headless ffmpeg poppler-utils ocrmypdf imagemagick fontforge ghostscript libreoffice-nogui libreoffice-java-common python3 python3-venv python3-uno tesseract-ocr tesseract-ocr-eng tesseract-ocr-deu tesseract-ocr-fra tesseract-ocr-por tesseract-ocr-chi-sim libcairo2 libpango-1.0-0 libpangoft2-1.0-0 libgdk-pixbuf-2.0-0 gosu unpaper qpdf fonts-dejavu fonts-liberation fonts-noto fonts-noto-cjk fonts-noto-color-emoji fonts-freefont-ttf fonts-terminus fonts-linuxlibertine libfreetype6 libfontconfig1 libx11-6 libxt6 libxext6 libxrender1 libxtst6 libxi6 libxinerama1 libxkbcommon0 libxkbfile1 libsm6 libice6 libegl1 libopengl0 libgl1 libxdamage1 libxfixes3 libxshmfence1 libdrm2 libgbm1 libxkbcommon-x11-0 libxrandr2 libxcomposite1 libnss3 libx11-xcb1 libxcb-cursor0 libdbus-1-3 libglib2.0-0 xvfb x11-utils coreutils xz-utils gpgv curl xdg-utils && curl -fsSL https://download.calibre-ebook.com/linux-installer.sh | sh /dev/stdin && apt-get purge -y xz-utils gpgv xdg-utils && apt-get autoremove -y && rm -rf /var/lib/apt/lists/* # buildkit

2026-01-09 22:52:14 UTC (buildkit.dockerfile.v0)

RUN /bin/bash -o pipefail -c ln -sf /opt/calibre/ebook-convert /usr/bin/ebook-convert && /opt/calibre/ebook-convert --version # buildkit

2026-01-09 22:52:14 UTC (buildkit.dockerfile.v0)

ARG PUID=1000

2026-01-09 22:52:14 UTC (buildkit.dockerfile.v0)

ARG PGID=1000

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

RUN |2 PUID=1000 PGID=1000 /bin/bash -o pipefail -c set -eux; if ! getent group stirlingpdfgroup >/dev/null 2>&1; then if getent group "${PGID}" >/dev/null 2>&1; then groupadd -o -g "${PGID}" stirlingpdfgroup; else groupadd -g "${PGID}" stirlingpdfgroup; fi; fi; if ! id -u stirlingpdfuser >/dev/null 2>&1; then if getent passwd | awk -F: -v id="${PUID}" '$3==id{found=1} END{exit !found}'; then echo "UID ${PUID} already in use – creating stirlingpdfuser with automatic UID"; useradd -m -g stirlingpdfgroup -d /home/stirlingpdfuser -s /bin/bash stirlingpdfuser; else useradd -m -u "${PUID}" -g stirlingpdfgroup -d /home/stirlingpdfuser -s /bin/bash stirlingpdfuser; fi; fi # buildkit

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

RUN |2 PUID=1000 PGID=1000 /bin/bash -o pipefail -c ln -sf /usr/sbin/gosu /usr/local/bin/su-exec # buildkit

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

COPY --chown=stirlingpdfuser:stirlingpdfgroup /app/app/core/build/libs/*.jar /app.jar # buildkit

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

COPY --chown=stirlingpdfuser:stirlingpdfgroup /app/build/libs/restart-helper.jar /restart-helper.jar # buildkit

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

COPY scripts/ /scripts/ # buildkit

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

COPY app/core/src/main/resources/static/fonts/*.ttf /usr/share/fonts/truetype/ # buildkit

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

ARG VERSION_TAG=2.2.0

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Stirling-PDF Fat

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.description=Stirling-PDF with embedded frontend - Fat version with extra fonts for air-gapped environments, includes Calibre, LibreOffice, Tesseract, OCRmyPDF, and more

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.source=https://github.com/Stirling-Tools/Stirling-PDF

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.licenses=MIT

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.vendor=Stirling-Tools

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.url=https://www.stirlingpdf.com

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.documentation=https://docs.stirlingpdf.com

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL maintainer=Stirling-Tools

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.authors=Stirling-Tools

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.version=2.2.0

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.keywords=PDF, manipulation, fat, air-gapped, API, Spring Boot, React

2026-01-09 22:52:15 UTC (buildkit.dockerfile.v0)

ENV VERSION_TAG=2.2.0 JAVA_BASE_OPTS=-XX:+ExitOnOutOfMemoryError -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/configs/heap_dumps -XX:+UnlockExperimentalVMOptions -XX:MaxRAMPercentage=75 -XX:InitiatingHeapOccupancyPercent=20 -XX:+G1PeriodicGCInvokesConcurrent -XX:G1PeriodicGCInterval=10000 -XX:+UseStringDeduplication -XX:G1PeriodicGCSystemLoadThreshold=70 -Djava.awt.headless=true JAVA_CUSTOM_OPTS= HOME=/home/stirlingpdfuser PUID=1000 PGID=1000 UMASK=022 FAT_DOCKER=true INSTALL_BOOK_AND_ADVANCED_HTML_OPS=false UNO_PATH=/usr/lib/libreoffice/program STIRLING_TEMPFILES_DIRECTORY=/tmp/stirling-pdf TMPDIR=/tmp/stirling-pdf TEMP=/tmp/stirling-pdf TMP=/tmp/stirling-pdf

2026-01-09 22:52:23 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c python3 -m venv /opt/venv --system-site-packages && /opt/venv/bin/pip install --no-cache-dir weasyprint pdf2image opencv-python-headless && /opt/venv/bin/python -c "import cv2; print('OpenCV version:', cv2.__version__)" # buildkit

2026-01-09 22:52:25 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c python3 -m venv /opt/unoserver-venv --system-site-packages && /opt/unoserver-venv/bin/pip install --no-cache-dir unoserver # buildkit

2026-01-09 22:52:25 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c ln -sf /opt/unoserver-venv/bin/unoconvert /opt/venv/bin/unoconvert && ln -sf /opt/unoserver-venv/bin/unoserver /opt/venv/bin/unoserver # buildkit

2026-01-09 22:52:25 UTC (buildkit.dockerfile.v0)

ENV PATH=/opt/venv/bin:/opt/unoserver-venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-01-09 22:52:26 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c set -eux; chmod +x /scripts/*; mkdir -p /configs /configs/heap_dumps /logs /customFiles /pipeline/watchedFolders /pipeline/finishedFolders /tmp/stirling-pdf; chown -R stirlingpdfuser:stirlingpdfgroup /home/stirlingpdfuser /configs /logs /customFiles /pipeline /tmp/stirling-pdf /app.jar /restart-helper.jar /usr/share/fonts/truetype /scripts; chmod -R 755 /tmp/stirling-pdf # buildkit

2026-01-09 22:52:29 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c fc-cache -f -v # buildkit

2026-01-09 22:52:29 UTC (buildkit.dockerfile.v0)

ENV QT_QPA_PLATFORM=offscreen QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu --disable-dev-shm-usage

2026-01-09 22:52:29 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-01-09 22:52:29 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGTERM

2026-01-09 22:52:29 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["tini" "--" "/scripts/init.sh"]

2026-01-09 22:52:29 UTC (buildkit.dockerfile.v0)

CMD []

Details
Created

2026-01-09 23:03:54 UTC

Size

1.36 GB

Content Digest
Labels
  • maintainer
    Stirling-Tools
  • org.opencontainers.image.authors
    Stirling-Tools
  • org.opencontainers.image.created
    2026-01-09T22:51:00.766Z
  • org.opencontainers.image.description
    #1 PDF Application on GitHub that lets you edit PDFs on any device anywhere
  • org.opencontainers.image.documentation
    https://docs.stirlingpdf.com
  • org.opencontainers.image.keywords
    PDF, manipulation, fat, air-gapped, API, Spring Boot, React
  • org.opencontainers.image.licenses
    NOASSERTION
  • org.opencontainers.image.revision
    a284dbfc15eb5ecf44d89777ea5f1fafe07da52f
  • org.opencontainers.image.source
    https://github.com/Stirling-Tools/Stirling-PDF
  • org.opencontainers.image.title
    Stirling-PDF
  • org.opencontainers.image.url
    https://github.com/Stirling-Tools/Stirling-PDF
  • org.opencontainers.image.vendor
    Stirling-Tools
  • org.opencontainers.image.version
    2.2.0-fat

Environment
DEBIAN_FRONTEND

noninteractive

FAT_DOCKER

true

HOME

/home/stirlingpdfuser

INSTALL_BOOK_AND_ADVANCED_HTML_OPS

false

JAVA_BASE_OPTS

-XX:+ExitOnOutOfMemoryError -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/configs/heap_dumps -XX:+UnlockExperimentalVMOptions -XX:MaxRAMPercentage=75 -XX:InitiatingHeapOccupancyPercent=20 -XX:+G1PeriodicGCInvokesConcurrent -XX:G1PeriodicGCInterval=10000 -XX:+UseStringDeduplication -XX:G1PeriodicGCSystemLoadThreshold=70 -Djava.awt.headless=true

JAVA_CUSTOM_OPTS

PATH

/opt/venv/bin:/opt/unoserver-venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PGID

1000

PUID

1000

QTWEBENGINE_CHROMIUM_FLAGS

--disable-gpu --disable-dev-shm-usage

QT_QPA_PLATFORM

offscreen

STIRLING_TEMPFILES_DIRECTORY

/tmp/stirling-pdf

TEMP

/tmp/stirling-pdf

TESS_BASE_PATH

/usr/share/tesseract-ocr/5/tessdata

TMP

/tmp/stirling-pdf

TMPDIR

/tmp/stirling-pdf

UMASK

022

UNO_PATH

/usr/lib/libreoffice/program

VERSION_TAG

2.2.0


Layers

[#000] sha256:0a05500c422fd71c75cc62e784d7039d082fad326ba2c1db07e4c4b0d3d801b1 - 2.07% (28.7 MB)

[#001] sha256:005bb55d45f629d27c3016e35173e7763aeda577dd08ebdc32e03c27ae348bb5 - 71.0% (986 MB)

[#002] sha256:a5d9f33be04fb39f5c320a553129ea6a8d49c63f4d163dba966731a72ac128ab - 0.0% (829 Bytes)

[#003] sha256:1d4d7b81791d04616e7a567f39ba284fd074f215bc9954b3d145e378a2c2cd99 - 0.0% (3.36 KB)

[#004] sha256:2c5919317cb756d3787fc4380dbeebe4e57ad815adf2022afdcd2c9f83f8245a - 0.0% (177 Bytes)

[#005] sha256:d49fe7f6ed631a0f7b4c3470dfc3826d73ddcc08c73401d464fb924e4c17086d - 14.29% (198 MB)

[#006] sha256:a2a55ddc0772423b99fe96ff7ef656256aaf1172375dd42561b517f83d5366db - 0.0% (3.29 KB)

[#007] sha256:ceb261956dba12cf83e751d2b9342c6fad4147a3bd828708ccddf647b4a3166a - 0.0% (67.7 KB)

[#008] sha256:44249ee88505c8d876251e71e71e5b9072f28924cd23cc821d8de4568f871ad0 - 2.19% (30.4 MB)

[#009] sha256:cc879f1aa73199673f3bd6fd3202fee82a9caedb3a5c7265041d82ff1f11bd53 - 4.78% (66.4 MB)

[#010] sha256:9c1c89dfc3b19dc87f249ba449b3f1bfc24cb80b8e89536a17a5906f6a1859b5 - 0.25% (3.42 MB)

[#011] sha256:6fed4bd260caedbe93d480986d626f8e2b42d89f729fdd4378dfab9ee7847f82 - 0.0% (198 Bytes)

[#012] sha256:cfa64a27db4626293939887b14cd4bec36285b7d1351ce6f164180f724703721 - 5.41% (75.1 MB)

[#013] sha256:d41c4ea5dddd2b57edf76813ac2edee0b957796e35931815106ad69feb9131ea - 0.01% (96.2 KB)


History
2025-12-08 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'arm64' out/ 'stable' '@1765152000'

2026-01-09 23:02:01 UTC (buildkit.dockerfile.v0)

SHELL [/bin/bash -o pipefail -c]

2026-01-09 23:02:01 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2026-01-09 23:02:01 UTC (buildkit.dockerfile.v0)

ENV TESS_BASE_PATH=/usr/share/tesseract-ocr/5/tessdata

2026-01-09 23:02:01 UTC (buildkit.dockerfile.v0)

RUN /bin/bash -o pipefail -c apt-get update && apt-get install -y --no-install-recommends ca-certificates tzdata tini bash fontconfig openjdk-21-jre-headless ffmpeg poppler-utils ocrmypdf imagemagick fontforge ghostscript libreoffice-nogui libreoffice-java-common python3 python3-venv python3-uno tesseract-ocr tesseract-ocr-eng tesseract-ocr-deu tesseract-ocr-fra tesseract-ocr-por tesseract-ocr-chi-sim libcairo2 libpango-1.0-0 libpangoft2-1.0-0 libgdk-pixbuf-2.0-0 gosu unpaper qpdf fonts-dejavu fonts-liberation fonts-noto fonts-noto-cjk fonts-noto-color-emoji fonts-freefont-ttf fonts-terminus fonts-linuxlibertine libfreetype6 libfontconfig1 libx11-6 libxt6 libxext6 libxrender1 libxtst6 libxi6 libxinerama1 libxkbcommon0 libxkbfile1 libsm6 libice6 libegl1 libopengl0 libgl1 libxdamage1 libxfixes3 libxshmfence1 libdrm2 libgbm1 libxkbcommon-x11-0 libxrandr2 libxcomposite1 libnss3 libx11-xcb1 libxcb-cursor0 libdbus-1-3 libglib2.0-0 xvfb x11-utils coreutils xz-utils gpgv curl xdg-utils && curl -fsSL https://download.calibre-ebook.com/linux-installer.sh | sh /dev/stdin && apt-get purge -y xz-utils gpgv xdg-utils && apt-get autoremove -y && rm -rf /var/lib/apt/lists/* # buildkit

2026-01-09 23:02:02 UTC (buildkit.dockerfile.v0)

RUN /bin/bash -o pipefail -c ln -sf /opt/calibre/ebook-convert /usr/bin/ebook-convert && /opt/calibre/ebook-convert --version # buildkit

2026-01-09 23:02:02 UTC (buildkit.dockerfile.v0)

ARG PUID=1000

2026-01-09 23:02:02 UTC (buildkit.dockerfile.v0)

ARG PGID=1000

2026-01-09 23:02:02 UTC (buildkit.dockerfile.v0)

RUN |2 PUID=1000 PGID=1000 /bin/bash -o pipefail -c set -eux; if ! getent group stirlingpdfgroup >/dev/null 2>&1; then if getent group "${PGID}" >/dev/null 2>&1; then groupadd -o -g "${PGID}" stirlingpdfgroup; else groupadd -g "${PGID}" stirlingpdfgroup; fi; fi; if ! id -u stirlingpdfuser >/dev/null 2>&1; then if getent passwd | awk -F: -v id="${PUID}" '$3==id{found=1} END{exit !found}'; then echo "UID ${PUID} already in use – creating stirlingpdfuser with automatic UID"; useradd -m -g stirlingpdfgroup -d /home/stirlingpdfuser -s /bin/bash stirlingpdfuser; else useradd -m -u "${PUID}" -g stirlingpdfgroup -d /home/stirlingpdfuser -s /bin/bash stirlingpdfuser; fi; fi # buildkit

2026-01-09 23:02:02 UTC (buildkit.dockerfile.v0)

RUN |2 PUID=1000 PGID=1000 /bin/bash -o pipefail -c ln -sf /usr/sbin/gosu /usr/local/bin/su-exec # buildkit

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

COPY --chown=stirlingpdfuser:stirlingpdfgroup /app/app/core/build/libs/*.jar /app.jar # buildkit

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

COPY --chown=stirlingpdfuser:stirlingpdfgroup /app/build/libs/restart-helper.jar /restart-helper.jar # buildkit

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

COPY scripts/ /scripts/ # buildkit

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

COPY app/core/src/main/resources/static/fonts/*.ttf /usr/share/fonts/truetype/ # buildkit

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

ARG VERSION_TAG=2.2.0

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Stirling-PDF Fat

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.description=Stirling-PDF with embedded frontend - Fat version with extra fonts for air-gapped environments, includes Calibre, LibreOffice, Tesseract, OCRmyPDF, and more

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.source=https://github.com/Stirling-Tools/Stirling-PDF

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.licenses=MIT

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.vendor=Stirling-Tools

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.url=https://www.stirlingpdf.com

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.documentation=https://docs.stirlingpdf.com

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL maintainer=Stirling-Tools

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.authors=Stirling-Tools

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.version=2.2.0

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.keywords=PDF, manipulation, fat, air-gapped, API, Spring Boot, React

2026-01-09 23:02:03 UTC (buildkit.dockerfile.v0)

ENV VERSION_TAG=2.2.0 JAVA_BASE_OPTS=-XX:+ExitOnOutOfMemoryError -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/configs/heap_dumps -XX:+UnlockExperimentalVMOptions -XX:MaxRAMPercentage=75 -XX:InitiatingHeapOccupancyPercent=20 -XX:+G1PeriodicGCInvokesConcurrent -XX:G1PeriodicGCInterval=10000 -XX:+UseStringDeduplication -XX:G1PeriodicGCSystemLoadThreshold=70 -Djava.awt.headless=true JAVA_CUSTOM_OPTS= HOME=/home/stirlingpdfuser PUID=1000 PGID=1000 UMASK=022 FAT_DOCKER=true INSTALL_BOOK_AND_ADVANCED_HTML_OPS=false UNO_PATH=/usr/lib/libreoffice/program STIRLING_TEMPFILES_DIRECTORY=/tmp/stirling-pdf TMPDIR=/tmp/stirling-pdf TEMP=/tmp/stirling-pdf TMP=/tmp/stirling-pdf

2026-01-09 23:03:19 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c python3 -m venv /opt/venv --system-site-packages && /opt/venv/bin/pip install --no-cache-dir weasyprint pdf2image opencv-python-headless && /opt/venv/bin/python -c "import cv2; print('OpenCV version:', cv2.__version__)" # buildkit

2026-01-09 23:03:48 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c python3 -m venv /opt/unoserver-venv --system-site-packages && /opt/unoserver-venv/bin/pip install --no-cache-dir unoserver # buildkit

2026-01-09 23:03:48 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c ln -sf /opt/unoserver-venv/bin/unoconvert /opt/venv/bin/unoconvert && ln -sf /opt/unoserver-venv/bin/unoserver /opt/venv/bin/unoserver # buildkit

2026-01-09 23:03:48 UTC (buildkit.dockerfile.v0)

ENV PATH=/opt/venv/bin:/opt/unoserver-venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-01-09 23:03:49 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c set -eux; chmod +x /scripts/*; mkdir -p /configs /configs/heap_dumps /logs /customFiles /pipeline/watchedFolders /pipeline/finishedFolders /tmp/stirling-pdf; chown -R stirlingpdfuser:stirlingpdfgroup /home/stirlingpdfuser /configs /logs /customFiles /pipeline /tmp/stirling-pdf /app.jar /restart-helper.jar /usr/share/fonts/truetype /scripts; chmod -R 755 /tmp/stirling-pdf # buildkit

2026-01-09 23:03:54 UTC (buildkit.dockerfile.v0)

RUN |3 PUID=1000 PGID=1000 VERSION_TAG=2.2.0 /bin/bash -o pipefail -c fc-cache -f -v # buildkit

2026-01-09 23:03:54 UTC (buildkit.dockerfile.v0)

ENV QT_QPA_PLATFORM=offscreen QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu --disable-dev-shm-usage

2026-01-09 23:03:54 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-01-09 23:03:54 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGTERM

2026-01-09 23:03:54 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["tini" "--" "/scripts/init.sh"]

2026-01-09 23:03:54 UTC (buildkit.dockerfile.v0)

CMD []

Danger Zone
Delete Tag

Please be careful as this will not just delete the reference but also the actual content!

For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.

Delete