yuzutech/kroki (0.29.1)
Published 2026-10-08 21:21:47 +00:00 by moeardent
Installation
docker pull scm.moebiusol.eu/moebiusol/yuzutech/kroki:0.29.1sha256:4b2bc2dcc63736ca4f22ec1711b551c3b8bb97da2ebac2d15e953692a8b56da7About this package
Kroki provides a unified API supporting multiple diagramming formats, making it easy to create diagrams from textual descriptions.
Image layers
| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:ddf1aa62235de6657123492b19d27d937c25668011b5ebf923a3f019200f8540 in / |
| CMD ["/bin/bash"] |
| ENV JAVA_HOME=/opt/java/openjdk |
| ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 |
| RUN /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl wget gnupg fontconfig ca-certificates p11-kit tzdata locales ; echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen; locale-gen en_US.UTF-8; rm -rf /var/lib/apt/lists/* # buildkit |
| ENV JAVA_VERSION=jdk-21.0.9+10 |
| RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='aeab55d064a1a27a3744b0880b9b414077b4ed2b1790817eea3df60aec946431'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.9%2B10/OpenJDK21U-jre_x64_linux_hotspot_21.0.9_10.tar.gz'; ;; arm64) ESUM='1d041073c65e834bdb4da732485a54ff829859dcd1549e7992f15bd73341be29'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.9%2B10/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.9_10.tar.gz'; ;; ppc64el) ESUM='4973d6a43393854ccabd32bf7a1306788831586166fc8f5fa34a9df428366014'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.9%2B10/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.9_10.tar.gz'; ;; riscv64) ESUM='bf821d8240e5d660f0c7e1ffa4f62e4b2dbf72c3d2245d9371160f61389b5fa4'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.9%2B10/OpenJDK21U-jre_riscv64_linux_hotspot_21.0.9_10.tar.gz'; ;; s390x) ESUM='951eb9fd40e4478b0a7069b672bc0307f59045d756dd3ca6ed0b1ea12ab41ca2'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.9%2B10/OpenJDK21U-jre_s390x_linux_hotspot_21.0.9_10.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; wget --progress=dot:giga -O /tmp/openjdk.tar.gz ${BINARY_URL}; wget --progress=dot:giga -O /tmp/openjdk.tar.gz.sig ${BINARY_URL}.sig; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 3B04D753C9050D9A5D343F39843C48A565F8F04B; gpg --batch --verify /tmp/openjdk.tar.gz.sig /tmp/openjdk.tar.gz; rm -rf "${GNUPGHOME}" /tmp/openjdk.tar.gz.sig; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p "$JAVA_HOME"; tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm -f /tmp/openjdk.tar.gz; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit |
| RUN /bin/sh -c set -eux; echo "Verifying install ..."; echo "java --version"; java --version; echo "Complete." # buildkit |
| COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit |
| ENTRYPOINT ["/__cacert_entrypoint.sh"] |
| ARG BLOCKDIAG_VERSION=3.1.0 |
| ARG D2_VERSION=0.7.0 |
| ARG DITAA_VERSION=1.0.3 |
| ARG DVISVGM_VERSION=3.2.1+ds-1build1 |
| ARG GRAPHVIZ_VERSION=9.0.0 |
| ARG PLANTUML_VERSION=1.2025.10 |
| ARG UMLET_VERSION=2023-03-20_UMLet_v15.1 |
| ARG WIREVIZ_VERSION=0.3.3 |
| ARG TARGETARCH=amd64 |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c apt-get update && apt-get install --no-install-recommends --yes adduser && addgroup --gecos 1001 kroki && adduser --disabled-password --ingroup kroki -u 1001 kroki # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c apt-get update && apt-get install --no-install-recommends --yes unzip dvisvgm=$DVISVGM_VERSION libpango1.0-dev librsvg2-dev fonts-freefont-ttf fonts-liberation fonts-noto-cjk ghostscript giflib-tools gsfonts libnuma1 libgd3 libgif-dev libjpeg-dev libgirepository-1.0 libcairo2-dev libcairo-gobject2 libjpeg9 libpango-1.0-0 libpangocairo-1.0-0 poppler-utils texlive texlive-latex-extra texlive-pictures texlive-pstricks texlive-science && apt-get clean && apt-get autoremove # buildkit |
| COPY packages packages # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c dpkg -i packages/libjpeg62-turbo_2.1.5-4_${TARGETARCH}.deb # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c wget "https://github.com/yuzutech/graphviz-builder/releases/download/${GRAPHVIZ_VERSION}/dot-linux-${TARGETARCH}" -O /usr/bin/dot && chmod +x /usr/bin/dot # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c wget "https://github.com/yuzutech/ditaa-mini/releases/download/${DITAA_VERSION}/ditaamini-linux-${TARGETARCH}-${DITAA_VERSION}" -O /usr/bin/ditaa && chmod +x /usr/bin/ditaa # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c wget "https://github.com/terrastruct/d2/releases/download/v${D2_VERSION}/d2-v${D2_VERSION}-linux-${TARGETARCH}.tar.gz" -O - | tar -zxv -C /usr/bin d2-v${D2_VERSION}/bin/d2 && mv usr/bin/d2-v${D2_VERSION}/bin/d2 /usr/bin/d2 && chmod +x /usr/bin/d2 # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c wget "https://github.com/yuzutech/plantuml/releases/download/v${PLANTUML_VERSION}/plantuml-linux-${TARGETARCH}-${PLANTUML_VERSION}.zip" -O plantuml-bin.zip && unzip plantuml-bin.zip -d plantuml && mv plantuml/* /usr/bin/ && mv /usr/bin/plantuml-linux-${TARGETARCH}-${PLANTUML_VERSION} /usr/bin/plantuml && chmod +x /usr/bin/plantuml # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c wget "https://github.com/yuzutech/umlet/releases/download/${UMLET_VERSION}/umlet-linux-${TARGETARCH}" -O /usr/bin/umlet && chmod +x /usr/bin/umlet # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c wget "https://github.com/yuzutech/blockdiag/releases/download/v${BLOCKDIAG_VERSION}/blockdiag-bundle-linux-${TARGETARCH}.bin" -O /usr/bin/blockdiag && chmod +x /usr/bin/blockdiag # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c wget "https://github.com/yuzutech/WireViz/releases/download/v${WIREVIZ_VERSION}/wireviz-linux-${TARGETARCH}.bin" -O /usr/bin/wireviz && chmod +x /usr/bin/wireviz # buildkit |
| COPY /root/.cabal/bin/erd /usr/bin/erd # buildkit |
| COPY /app/app.bin /usr/bin/bytefield # buildkit |
| COPY /app/app.bin /usr/bin/dbml # buildkit |
| COPY /app/app.bin /usr/bin/nomnoml # buildkit |
| COPY /build/pikchr /usr/bin/pikchr # buildkit |
| COPY /usr/local/cargo/bin/svgbob_cli /usr/bin/svgbob # buildkit |
| COPY /build/symbolator.bin /usr/bin/symbolator # buildkit |
| COPY /app/app.bin /usr/bin/vega # buildkit |
| COPY /app/app.bin /usr/bin/wavedrom # buildkit |
| COPY tikz2svg /usr/bin/tikz2svg # buildkit |
| COPY --chown=kroki:kroki ops/docker/logback.xml /etc/kroki/logback.xml # buildkit |
| ENV KROKI_CONTAINER_SUPPORT= |
| ENV KROKI_SAFE_MODE=secure |
| ENV KROKI_SVGBOB_BIN_PATH=/usr/bin/svgbob |
| ENV KROKI_ERD_BIN_PATH=/usr/bin/erd |
| ENV KROKI_DOT_BIN_PATH=/usr/bin/dot |
| ENV KROKI_NOMNOML_BIN_PATH=/usr/bin/nomnoml |
| ENV KROKI_VEGA_BIN_PATH=/usr/bin/vega |
| ENV KROKI_DBML_BIN_PATH=/usr/bin/dbml |
| ENV KROKI_WAVEDROM_BIN_PATH=/usr/bin/wavedrom |
| ENV KROKI_BYTEFIELD_BIN_PATH=/usr/bin/bytefield |
| ENV KROKI_PIKCHR_BIN_PATH=/usr/bin/pikchr |
| ENV KROKI_D2_BIN_PATH=/usr/bin/d2 |
| ENV KROKI_UMLET_BIN_PATH=/usr/bin/umlet |
| ENV KROKI_PLANTUML_BIN_PATH=/usr/bin/plantuml |
| ENV KROKI_TIKZ2SVG_BIN_PATH=/usr/bin/tikz2svg |
| ENV KROKI_DITAA_BIN_PATH=/usr/bin/ditaa |
| ENV KROKI_SYMBOLATOR_BIN_PATH=/usr/bin/symbolator |
| ENV KROKI_WIREVIZ_BIN_PATH=/usr/bin/wireviz |
| ENV JAVA_OPTS=-Dlogback.configurationFile=/etc/kroki/logback.xml -Dvertx.logger-delegate-factory-class-name=io.vertx.core.logging.SLF4JLogDelegateFactory |
| COPY --chown=kroki:kroki target/kroki-server.jar /usr/local/kroki/kroki-server.jar # buildkit |
| RUN |9 BLOCKDIAG_VERSION=3.1.0 D2_VERSION=0.7.0 DITAA_VERSION=1.0.3 DVISVGM_VERSION=3.2.1+ds-1build1 GRAPHVIZ_VERSION=9.0.0 PLANTUML_VERSION=1.2025.10 UMLET_VERSION=2023-03-20_UMLet_v15.1 WIREVIZ_VERSION=0.3.3 TARGETARCH=amd64 /bin/sh -c mkdir /tmp/vertx-cache && chown kroki:kroki /tmp/vertx-cache # buildkit |
| EXPOSE [8000/tcp] |
| USER kroki |
| ENTRYPOINT ["/bin/sh" "-c" "exec java $JAVA_OPTS -jar /usr/local/kroki/kroki-server.jar"] |
Labels
| Key | Value |
|---|---|
| org.opencontainers.image.description | Kroki provides a unified API supporting multiple diagramming formats, making it easy to create diagrams from textual descriptions. |
| org.opencontainers.image.licenses | MIT |
| org.opencontainers.image.ref.name | ubuntu |
| org.opencontainers.image.source | https://github.com/yuzutech/kroki |
| org.opencontainers.image.title | Kroki |
| org.opencontainers.image.url | https://kroki.io |
| org.opencontainers.image.version | 24.04 |