GuruWatcher Guides · 24/7 on Hetzner

Run 24/7 on a cheap Hetzner server

Optional. On your laptop, Keep checking only runs while the machine is awake. A small cloud server can keep watching overnight — still your Discord, your email, alert-only.

All guides Keep checking (laptop)

Do you need this?

No. Most people start on a Mac or PC with the launcher and Keep checking. That path stays the simplest.

Use a server only if you want alerts even when your laptop is closed or asleep. You rent the machine; GuruWatcher does not host it for you.

Why Hetzner?

Hetzner Cloud sells small Linux VMs that are usually only a few euros a month for the cheapest size — enough for GuruWatcher. Other clouds work the same way; this guide uses Hetzner because it’s a common cheap option. Check their site for current prices and locations.

Pick a region near you. You don’t need a big plan — the smallest shared CX / CAX (or current entry size) is fine for alert-only Keep checking.

What you’ll do (overview)

  1. Create a Hetzner Cloud account and add a payment method (their checkout, not ours).
  2. Create a server — Ubuntu LTS, smallest size, add your SSH key (safer than a password).
  3. Log in with SSH from your computer (ssh [email protected]).
  4. Install GuruWatcher from your purchase zip (or private repo if you have an invite) onto that server.
  5. Configure once — Discord alert link, newsletter email (or drop folder), then run the schedule so it keeps checking.

Install on the server (Linux)

After SSH, something like this (paths are yours — adjust):

sudo apt update && sudo apt install -y python3 python3-venv python3-pip unzip
# Upload or download your GuruWatcher zip, then:
unzip GuruWatcher-*.zip -d ~/GuruWatcher
cd ~/GuruWatcher
python3 -m venv .venv && source .venv/bin/activate
pip install -e .
export GURU_WATCHER_DATA="$HOME/gw-data"
python3 -m guru_watcher init --data-dir "$GURU_WATCHER_DATA"
# Put Discord webhook + email settings in $GURU_WATCHER_DATA/.env
# (same ideas as the Control Panel — see Connect Discord / Connect email guides)

For Discord and email setup ideas, use the same guides as on a laptop: Connect Discord · Connect email. On a headless server you’ll edit .env (or copy a data folder you already tested locally) instead of using the browser Control Panel.

Keep it running without Docker

Your zip includes optional Linux timer files under systemd/toolkit/. They run ingest → reconcile → check on a schedule (same spine as Keep checking). Edit the paths for your home directory, then:

sudo cp systemd/toolkit/guruwatcher-pipeline.service /etc/systemd/system/
sudo cp systemd/toolkit/guruwatcher-pipeline.timer /etc/systemd/system/
# Edit those unit files: set WorkingDirectory, User, GURU_WATCHER_DATA, venv python
sudo systemctl daemon-reload
sudo systemctl enable --now guruwatcher-pipeline.timer
systemctl list-timers guruwatcher-pipeline.timer

Start in Safe / dry-run until you’re sure Discord and email look right. Live mode needs a valid Discord alert link and fails closed without one.

Safety & common sense

Next

Prefer the simple path? Keep checking on your computer · or back to all guides.