Convert plain text diagrams to images !
Kroki provides a unified API with support for BlockDiag (BlockDiag, SeqDiag, ActDiag, NwDiag, PacketDiag, RackDiag), BPMN, Bytefield, C4 (with PlantUML), D2, DBML, Ditaa, Erd, Excalidraw, GraphViz, Mermaid, Nomnoml, Pikchr, PlantUML, SvgBob, Symbolator, UMLet, Vega, Vega-Lite, WaveDrom... and more to come!
In order to run this container you'll need docker installed.
See also the installation docs in the Kroki documentation
$ docker run --name some-kroki -d yuzutech/kroki
This image includes EXPOSE 8000
(the kroki port), so standard container linking will make it automatically available to the linked containers. If you want to map port 8000 in the container to a port on your host, please use the --publish
or -p
flag:
$ docker run -p8000:8000 --name some-kroki -d yuzutech/kroki
We recommend using docker-composer to connect with companion containers, such as kroki-bpmn, kroki-excalidraw and kroki-mermaid
services:
core:
image: yuzutech/kroki
environment:
- KROKI_MERMAID_HOST=mermaid
- KROKI_BPMN_HOST=bpmn
- KROKI_EXCALIDRAW_HOST=excalidraw
ports:
- "8000:8000"
mermaid:
image: yuzutech/kroki-mermaid
ports:
- "8002:8002"
bpmn:
image: yuzutech/kroki-bpmn
ports:
- "8003:8003"
excalidraw:
image: yuzutech/kroki-excalidraw
ports:
- "8004:8004"
If you don't want to use docker-compose
, you can configure the host and port for each companion container using environment variables:
Container | Host | Port |
---|---|---|
kroki-mermaid |
KROKI_MERMAID_HOST |
KROKI_MERMAID_PORT |
kroki-bpmn |
KROKI_BPMN_HOST |
KROKI_BPMN_PORT |
kroki-excalidraw |
KROKI_EXCALIDRAW_HOST |
KROKI_EXCALIDRAW_PORT |
For Kubernetes installation follow the description in install using Kubernetes section.
The Kroki image uses several environment variables. While none of the variables are required, they may significantly aid you in using the image.
See the configuration docs in the Kroki documentation
We use SemVer for versioning.
This project is licensed under the MIT License.