Docker monitoring

Containers watched,restarts and all.

Checkmate tells you the moment a container stops running, next to the uptime monitors for the services inside it. Health states, restart timelines and per-container stats are being built now.

postgres-16Running
checked every 30 s
Uptime / 30 days
99.9%
1 incident
Running for
18 days
Checked
every 30 s
Recent checks
09:41:02running
09:40:32running
09:40:02running
Container status

Up, healthy or quietly gone.

A container can exit at 3am and be restarted by its policy before anyone notices, or stay down until a customer does. Docker monitors track container state on the schedule you set, so either way there is a record and an alert.

If an image ships a HEALTHCHECK, the result is already collected with each check. Showing unhealthy as its own state in the dashboard is next on the list.

  • Container status tracking
  • Up and down alerts on the 12 channels you already use
  • Incident history per container
Containershost: web-01
webUp
workerUp
redisUp
cronRestarting
legacy-apiExited
Restart events
Upcoming

Crash loops, caught in the act.

Restart events will be reported alongside host metrics, so a container bouncing every few minutes stops hiding behind its restart policy.

The pattern belongs in history: one restart after a deploy is noise, 40 an hour is a bug. This view is in the works.

  • Restart events in the monitor timeline
  • History that separates blips from loops
Restart events3 in 15 min
09:38cron restarted (exit 137)
09:31cron restarted (exit 137)
09:24cron restarted (exit 137)
07:02web deployed · image updated
Pattern detected: restart loop on cron

Design preview: this view is being built.

Resources
Upcoming

Which container is eating the box.

The Capture agent already collects per-container CPU, memory, network and disk I/O. The dashboard view that puts it next to the host's own metrics is being built.

Once it lands, 'which one is it' beats SSHing in to run docker stats while the pager keeps buzzing.

  • Collected by the open-source Capture agent today
  • Dashboard view on the way
Per-container usagehost CPU 64%
web
1.4 GB
postgres-16
2.1 GB
worker
820 MB
redis
190 MB

Design preview: this view is being built.

Who runs this

For everyone whose stack is a compose file.

Self-hosters

Your services live in containers on one or two boxes. Watch all of them without adding a heavyweight orchestration layer.

Small product teams

A VPS running a compose stack is a common production setup. Container health, host health and endpoint uptime in one dashboard covers it.

Homelab tinkerers

20 containers accumulate fast. Get a straight answer to which ones are up, unhealthy or stuck in a restart loop.

Scope

What it covers, and what it doesn't.

Covered

  • Container status, checked on your schedule
  • Up and down alerts on 12 notification channels
  • Incident history and uptime per container
  • Host-level metrics via the Capture agent

Out of scope

  • Not yet in the UI: health states, restart timelines and per-container stats (collected today, views upcoming)
  • Kubernetes control planes and pods: Checkmate watches containers, not orchestrators
  • Image registry and vulnerability scanning
  • Log collection from your containers
Under the hood

For the technically curious.

A first-class monitor type

Docker monitors sit next to HTTP, ping and the rest. Add one per container you care about, set the interval and route its alerts like any other monitor.

Health checks, next

The HEALTHCHECK your image defines is the best signal of container wellbeing. Checkmate already stores the result with each check; a first-class unhealthy state in the dashboard is upcoming.

Pairs with service checks

The container being up and the service inside answering are different facts. Run a Docker monitor next to an HTTP monitor for the same app, and know which layer broke.

Checkmate runs in Docker too

The whole platform ships as a small set of containers with a compose file. Monitoring containers from containers is the normal setup here.

FAQ

Frequently askedquestions.

Add a Docker monitor for a container. Checkmate checks whether it is running on the schedule you set, records the history and alerts through your notification channels the moment it stops.

Status changes alert immediately, so a container that stops fires your channels. A dedicated restart-event timeline that makes loops visible as a pattern is upcoming.

Not yet in the dashboard. The Capture agent already collects per-container CPU, memory, network and disk I/O. The view that displays it next to host metrics is being built.

No. Checkmate watches containers and hosts, not orchestrator control planes. If you run plain Docker or compose stacks, it fits. For Kubernetes-native observability you'll want a Kubernetes-native tool.

Yes. It ships as a small set of containers: pull the compose file, run it and the dashboard is up. About 1 GB of RAM on any Docker host is enough to start.

Yes. Open source under AGPL-3.0, self-hosted, with no container or host limits.

Get started

Every feature,no paywall.

Checkmate is open source under AGPL-3.0. Self-host it and this feature ships free, on your servers, with your data.