Nomploy Nomad Packs

← All packs

plantuml v0.1.0

Dev tools

PlantUML Server — a web service that renders UML and other diagrams from PlantUML text, with a live in-browser editor. Deployed as a single stateless host-networked Nomad service.

nomad-pack run plantuml --registry nomploy
…or one line (add registry + run)
curl -fsSL https://packs.nomploy.com/install.sh | sh -s -- plantuml

Needs nomad-pack on PATH. The script only adds the nomploy registry and runs this pack.

1 task http 8080 image plantuml/plantuml-server:jetty pinned :jetty image bumped today
Variables 7
values.hcl

Save as values.hcl, edit, then run:

nomad-pack run plantuml -f values.hcl --registry nomploy
# The name of the Nomad job.
job_name = "plantuml"

# The Nomad namespace to deploy into.
namespace = "default"

# The datacenters to deploy to.
datacenters = ["*"]

# The PlantUML Server container image. Pin a tag in production.
image = "plantuml/plantuml-server:jetty"

# Host port for the PlantUML Server web UI. Fixed at 8080 inside the Jetty image.
port = 8080

# Placement constraints. On a nomploy cluster: attribute = "$${meta.nomploy_control_plane}", operator = "=", value = "true".
constraints = []

# The task resources.
resources = {
    cpu    = 500
    memory = 512
  }
NameTypeDefaultDescription
job_name string
"plantuml"
The name of the Nomad job.
namespace string
"default"
The Nomad namespace to deploy into.
datacenters list
["*"]
The datacenters to deploy to.
image string
"plantuml/plantuml-server:jetty"
The PlantUML Server container image. Pin a tag in production.
port number
8080
Host port for the PlantUML Server web UI. Fixed at 8080 inside the Jetty image.
constraints list
[]
Placement constraints. On a nomploy cluster: attribute = "$${meta.nomploy_control_plane}", operator = "=", value = "true".
resources object
{
    cpu    = 500
    memory = 512
  }
The task resources.
Readme

plantuml

PlantUML Server — a web service that renders UML and other diagrams from plain PlantUML text: sequence, class, activity, component, state, ER, mind-map, Gantt and more. It ships a live in-browser editor and a stable image URL API, so wikis, docs and chat tools can embed diagrams that render on demand.

Single stateless host-networked Nomad service (no volume).

Deploy

nomad-pack registry add nomploy https://github.com/Nomploy/nomad-packs
nomad-pack run plantuml --registry=nomploy

Configure

Variable Default Description
port 8080 Web UI / API port. Fixed at 8080 inside the Jetty image.
image plantuml/plantuml-server:jetty Container image. Pin a tag in production.
resources { cpu = 500, memory = 512 } Task resources. The JVM needs some headroom.

Open http://<host>:8080 for the editor, or POST/GET encoded diagrams at /svg/…, /png/…, /txt/…. Being stateless, it needs no storage and scales horizontally. Pairs well with wikis like wikijs or hedgedoc.