---
title: "Deploy Supplier Page Watch with ChangeDetection"
description: "Private supplier-page monitoring with durable diffs and bounded polling."
category: "Observability"
url: https://railway.com/deploy/supplier-page-watch-with-changedetection
---

# Deploy Supplier Page Watch with ChangeDetection

Private supplier-page monitoring with durable diffs and bounded polling.

**[Deploy Supplier Page Watch with ChangeDetection on Railway](https://railway.com/template/supplier-page-watch-with-changedetection)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/supplier-page-watch-with-changedetection/manifest.json

- **Creator:** dankeewithtwoes's Projects
- **Category:** Observability

## Template content

### App

- **Image:** ghcr.io/dgtlmoon/changedetection.io@sha256:04eaae7915bad711160cb15abe160f6d3fabe98bbbd658509d4b7a654000fb2d

### Gateway

- **Image:** caddy@sha256:d8542f48d34a9cf4e4c11a478865229840e87e4c96ea3f439101f31a5d35f75f
- **Start command:** `/bin/sh -c 'set -eu; hash=$(caddy hash-password --plaintext "$GATEWAY_PASSWORD"); printf "{\n admin off\n auto_https off\n}\n:8080 {\n header X-Robots-Tag noindex\n basic_auth {\n operator %s\n }\n reverse_proxy %s {\n header_up X-Forwarded-Proto https\n }\n}\n" "$hash" "$UPSTREAM" > /tmp/Caddyfile; exec caddy run --config /tmp/Caddyfile --adapter caddyfile'`
- **Public domain:** Yes

## Documentation

# Deploy and Host Supplier Page Watch with ChangeDetection on Railway

Private supplier-page monitoring with durable diffs and bounded polling.

## About Hosting Supplier Page Watch with ChangeDetection

Procurement teams and small shops tracking supplier catalog pages.

Add a supplier URL, select the price or stock CSS selector, choose an interval, then add a notification destination in Settings. HTTP fetching is ready; JavaScript-heavy pages need a separately configured browser service.

### Included services and storage

| Service | Persistent storage | Public access |
| --- | --- | --- |
| App | /datastore | Private network only |
| Gateway | None; container state is disposable | HTTPS domain |

### First deployment

1. Review required inputs in the deploy form and supply your own administrator email where requested.
2. Deploy the services and wait for the application and any database migrations to finish.
3. Open the generated HTTPS domain and follow the workflow above.
4. For the first browser prompt use username `operator` and the generated `Gateway.GATEWAY_PASSWORD` from Railway variables. App-specific accounts, where present, remain separate. The App service has no public domain.

## Why Deploy Supplier Page Watch with ChangeDetection on Railway

The definition supplies an HTTPS endpoint, generated credentials where supported and explicit storage paths. PostgreSQL, when present, stays private. Public upstream image manifests are locked to immutable digests so an upstream tag change does not silently replace a running version.

## Common Use Cases

- Watch supplier stock changes.
- Track price-list revisions.
- Follow product specification updates.

## Dependencies for Supplier Page Watch with ChangeDetection

- [Upstream application and its documentation](https://github.com/dgtlmoon/changedetection.io). The upstream authors own the application and its license. This recipe does not claim application authorship or official endorsement.
- Caddy gateway using generated Basic authentication and WebSocket-capable reverse proxying.
- A Railway plan with resources sufficient for these services. Hosting, storage and outbound traffic are billed by Railway; no software subscription, bank connection, SMTP account or provider credit is included.

### Operational limits and backups

Two fetch workers and a five-minute minimum interval keep accidental polling bounded. This template does not include a browser worker, proxy subscription or notification-provider account. Use pages you are permitted to monitor.

Run one replica for volume-backed applications. Schedule volume backups and export important application data; a persistent volume is not a backup. Keep generated secrets with the backups and review upstream migration notes before changing the pinned image. Credentials cannot all be rotated by changing first-run environment variables after accounts already exist.

### Validation status

Prepared on 2026-10-18 from upstream installation documentation and public image manifests. Railway schema, variable references and publication metadata are checked before publication. Application runtime boot checks were not performed. This is an independently authored deployment recipe for existing software, not a claim of novel software, audited security or Railway partner verification.


## Deploy this recipe

[![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/new/template/supplier-page-watch-with-changedetection?utm_source=railway-marketplace&amp;utm_medium=listing&amp;utm_campaign=toolkit-discovery&amp;utm_content=supplier-page-watch)

Review the required inputs and hosting resource costs before deploying.

### Related deployment recipes

- [ntfy Private Notifications with Persistent Data](https://railway.com/template/ntfy-private-notifications-with-persiste) — Private push notifications with generated admin and persistent storage.
- [n8n with PostgreSQL &amp; Durable Storage](https://railway.com/template/n8n-with-postgresql-and-durable-storage) — Workflow automation with private Postgres, durable files and webhook URLs.
- [Uptime Kuma with Persistent Storage](https://railway.com/template/uptime-kuma-with-persistent-storage) — Uptime checks, alerts and status pages with persistent monitor data.

These are separate deployments; no preconfigured integration between the applications is implied.

Disclosure: this template is maintained independently. Its maintainer may earn Railway usage kickbacks when other people deploy it. Railway bills hosting separately; no paid software subscription or provider credits are included.



## Similar templates

- [Rootprint](https://railway.com/deploy/rootprint-1) — Open-source logs and traces with full-text search on object-storage.
- [VPS Fleet Watch Hub with Beszel](https://railway.com/deploy/vps-fleet-watch-hub-with-beszel) — A persistent Beszel hub for external VPS agents and fleet alerts.
- [Pyroscope profiling](https://railway.com/deploy/pyroscope-profiling) — Protected continuous profiling with durable Pyroscope storage.

Open this page in a browser: https://railway.com/deploy/supplier-page-watch-with-changedetection
