Master Server Monitoring with Checkmate: Install, Docker Setup & Real‑Time Insights
This guide introduces Checkmate, a modern open‑source monitoring platform, and walks you through its key features, Docker‑based installation, and step‑by‑step usage for website, server, Docker container, and hardware monitoring, plus theme customization.
Introduction
After deploying a project, monitoring server status becomes essential; many tools have outdated interfaces or complex configurations. Checkmate is a modern open‑source monitoring tool that sets a new benchmark.
Key Features
Self‑hosted: fully open source and deployable on your own servers.
Website monitoring: track site availability, performance, response time, and multi‑region uptime.
Hardware monitoring: use the Capture plugin to monitor CPU, memory, disk usage, and system performance.
Docker monitoring: real‑time visibility into container status, resource usage, and metrics.
Network monitoring: custom Ping checks for latency and availability.
Installation
Using Docker is the most convenient way to install Checkmate.
docker pull ghcr.io/bluewave-labs/checkmate-client:latest
docker pull ghcr.io/bluewave-labs/checkmate-backend:latestSince the backend depends on MongoDB, start a MongoDB container first:
docker run -p 27017:27017 --name mongo \
-v /mydata/mongo/db:/data/db \
-d mongo:4Then launch both client and backend with Docker Compose using the following docker-compose.yml:
services:
client:
image: ghcr.io/bluewave-labs/checkmate-client:latest
environment:
UPTIME_APP_API_BASE_URL: "http://192.168.3.101:52345/api/v1"
UPTIME_APP_CLIENT_HOST: "http://192.168.3.101"
ports:
- "80:80"
- "443:443"
depends_on:
- server
server:
image: ghcr.io/bluewave-labs/checkmate-backend:latest
ports:
- "52345:52345"
environment:
- DB_CONNECTION_STRING=mongodb://192.168.3.101:27017/uptime_db
- CLIENT_HOST=http://192.168.3.101
- JWT_SECRET=my_secret
volumes:
- /var/run/docker.sock:/var/run/docker.sock:roUpload the script to the server and run: docker-compose -f checkmate.yml up -d After a successful start, access the Checkmate UI at http://192.168.3.101 and register the first account.
Usage
Website Monitoring
Click the “Create new” button, select “Website monitoring”, and enter the target URL and interval.
Server Monitoring
Choose “Ping monitoring” and provide the server’s IP address.
Docker Monitoring
Obtain the container ID (e.g., for a MongoDB container) with: docker inspect -f '{{.Id}}' mongo Then select “Docker container monitoring” and configure the ID.
Hardware Monitoring
Run the Capture plugin:
docker run -p 59232:59232 --name capture \
-e API_SECRET=your-secret-key \
-d ghcr.io/bluewave-labs/capture:latestOpen the “infrastructure” panel, click “create”, and input the Capture endpoint (e.g., 192.168.3.101:59232/api/v1/metrics) along with the API secret to view CPU, memory, disk, and network metrics.
Themes
Checkmate supports both light and dark themes, switchable via settings.
Conclusion
Checkmate is a powerful open‑source monitoring solution trusted by engineers at Google, Microsoft, Tencent, and ByteDance; it’s worth trying for anyone needing comprehensive server and application observability.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
macrozheng
Dedicated to Java tech sharing and dissecting top open-source projects. Topics include Spring Boot, Spring Cloud, Docker, Kubernetes and more. Author’s GitHub project “mall” has 50K+ stars.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
