Deploy and Host changedetection.io on Sealos
changedetection.io is an open-source service for monitoring webpages, JSON endpoints, and PDF documents. This template deploys changedetection.io 0.55.8 with persistent storage, a public HTTPS endpoint, and health checks on Sealos Cloud.

About Hosting changedetection.io
changedetection.io checks targets on a schedule, stores snapshots, highlights content differences, and sends notifications through supported integrations. Its visual selector helps focus monitoring on relevant page elements, while filters reduce noise from timestamps, counters, and other frequently changing content.
The Sealos template provisions one changedetection.io StatefulSet, a 1 GiB persistent volume mounted at /datastore, a Service on port 5000, a public HTTPS Ingress, and startup, readiness, and liveness probes. The application stores its settings, watches, snapshots, and history on the persistent volume.
Common Use Cases
- Website Change Alerts: Monitor product pages, policy pages, release notes, and documentation.
- Price and Availability Tracking: Watch visible product details and receive change notifications.
- API and Data Monitoring: Track JSON endpoints and structured data for meaningful differences.
- Content Review Workflows: Preserve snapshot history and inspect changes from the dashboard.
Dependencies for changedetection.io Hosting
The template includes the application container, persistent storage, Kubernetes networking, health probes, and a Sealos application entry.
Deployment Dependencies
Implementation Details
Architecture Components:
- changedetection.io: A single StatefulSet serving the dashboard and running scheduled checks on port 5000.
- Persistent Storage: A 1 GiB volume mounted at
/datastore.
- Public Endpoint: A Sealos-managed HTTPS Ingress with extended request and response timeouts.
- Health Checks: Kubernetes probes use
/worker-health to verify both the web process and fetch workers.
BASE_URL uses the generated Sealos HTTPS address, FETCH_WORKERS uses the deployment input, and HIDE_REFERER protects the dashboard address when changedetection.io fetches monitored targets.
changedetection.io is licensed under the Apache License 2.0.
Why Deploy changedetection.io on Sealos?
- One-Click Deployment: Create the application, storage, network, and health checks from one template.
- Persistent Monitoring History: Keep watches, settings, snapshots, and history across restarts.
- Automatic HTTPS: Receive a public domain and TLS certificate through Sealos.
- Kubernetes Operations: Inspect logs, storage, network settings, and resources from Sealos Canvas.
- Validated Starter Resources: Begin with a live-tested low-load profile and scale with the number and frequency of watches.
Deployment Guide
- Open the changedetection.io template and click Deploy Now.
- Keep Fetch workers at
10 for a small personal deployment. Choose a lower value for very small workloads or a higher value for more concurrent checks.
- Click Deploy and wait for the StatefulSet to report Ready.
- Open the changedetection.io application entry shown in Sealos.
Access and Password Protection
Fresh deployments open the dashboard immediately. changedetection.io uses an optional shared dashboard password:
- Open Settings.
- In the general application settings, enter a password and save the form.
- Future visits open
/login; enter the same password to access the dashboard.
Store this password securely. Every dashboard user signs in with the shared password.
Add Your First Watch
- Enter a public webpage or JSON endpoint in the URL field.
- Select the webpage or restock processor.
- Click Watch.
- Use Recheck to run an immediate check.
- Open Edit to configure filters, check frequency, and notifications.
Configuration
| Name | Default | Required | Description |
|---|
fetch_workers | 10 | No | Number of checks that changedetection.io can process concurrently. |
The tested starter profile uses a 100m CPU limit and 128Mi memory limit. Increase memory first when the dashboard approaches the memory ceiling, then increase CPU and fetch_workers for higher check concurrency.
Persistence and Scaling
The /datastore volume contains application configuration and monitoring history. Back up the persistent volume before migrations or major upgrades.
Keep the StatefulSet at one replica because the scheduler and file-backed datastore share one persistent volume. Scale throughput by increasing CPU, memory, and fetch_workers, or by following upstream guidance for a more advanced distributed setup.
Troubleshooting
The dashboard is unavailable
Wait for the StatefulSet to become Ready, then verify that the Service has a ready endpoint. Review Pod logs and the /worker-health probe status in Sealos Canvas.
A watch remains in an error state
Confirm that the target is publicly reachable from the application Pod. Review target authentication, TLS, rate limits, anti-bot controls, and the selected fetch method.
Checks become slow
Inspect CPU and memory usage in Sealos. Increase memory when usage approaches 128Mi, then increase CPU and fetch_workers together for additional concurrency.
Getting Help
License
This Sealos template follows the licensing terms of the templates repository. changedetection.io is distributed under the Apache License 2.0.