Docktornet turns Docker labels on containers into NPM proxy hosts, Caddy routes, Cloudflare DNS records and Gatus monitors, and removes them when the containers go away.
Service: One labelled container on one machine, the unit docktornet reconciles. Avoid: app, stack, container (when the labels are meant)
Service ID:
The machine/container string that names a service everywhere docktornet records it.
Avoid: container ID, service name
Grace period: How long a service may be missing from its machine's snapshots before docktornet removes its managed resources. It stops a container restart from looking like a removal. Avoid: timeout, debounce
Dropped group:
An npm.<index> or caddy.<index> label group a live service no longer has. Its proxy host or Caddy route is deleted in the next apply, with no grace period. A caddy.<index> group whose host a lower index already holds also counts as dropped, so the host stays with the lower index alone.
Avoid: removed group, deleted labels
Malformed group:
An npm.<index> or caddy.<index> label group still on a live service that fails to parse, such as a port of 80a. Its proxy host or Caddy route is kept as it was, with its hostnames still claimed, until the labels are fixed or dropped. A malformed caddy.<index> group whose hostname another group of the service now lists counts as dropped, so one hostname never has two of a service's Caddy routes. A container whose only docktornet labels are malformed is a service that has left.
Avoid: invalid group, broken labels
Pending removal: A managed resource docktornet has decided to delete, kept until the deletion succeeds. One whose service has left also waits out the grace period first; an NPM proxy host or Caddy route of a dropped group waits for none. Avoid: orphan (that is a resource no mapping points to)
Managed resource: An NPM proxy host, Caddy route or Cloudflare DNS record that docktornet owns on behalf of one service. Avoid: docktornet resource, our host
Ownership mapping: Docktornet's database record linking a service to its managed resources. It is the working copy of ownership. Avoid: ownership table, DB ownership
Ownership marker:
A tag written on the managed resource itself, naming the service ID that owns it. It is the durable proof of ownership and outlives the database. A Caddy route's marker is its @id, which identifies the service without spelling out its service ID.
Avoid: tag, label (those mean Docker labels here), metadata
Adoption: Taking over a resource that already exists in NPM, Caddy or Cloudflare instead of creating a new one. Adoption always writes an ownership marker. Avoid: import, claim
Marker adoption: Adoption of a resource whose ownership marker names the service. Always allowed.
Hostname adoption:
Adoption of an unmarked resource because its hostname matches a service's labels. Allowed only when DOCKTORNET_ADOPT_EXISTING is on, and never for a resource whose marker names another service.
Avoid: legacy adoption
Caddy route:
A route docktornet writes into the operator's Caddy for one caddy.<index> label group of a service, sending the group's hostnames to the service's machine.
Avoid: Caddy host, site, proxy host (that is NPM's)
Anchor route: The one route in the operator's own Caddy config whose sub-routes docktornet owns. Every Caddy route sits inside it, ahead of the operator's hand-written routes. Avoid: docktornet server block, parent route
Classification map:
The docktornet-classification.json file the server writes next to the Gatus service files. For each Gatus endpoint it gives the severity, area, host and alert thresholds an alert service needs. Its host is the machine ID of the reporting agent, not an NPM host.
Avoid: alert map, label map
Severity:
How urgent a Gatus endpoint's alerts are: critical, warning or info.
Avoid: priority, level
Area:
The part of the estate a Gatus endpoint watches, such as backups or network.
Avoid: category, component