Fall 2026brianmars.comBuilt at EGBT Technologies
Build log

Obsidian Sync Without the Cloud

A sync server written for Cloudflare, running on my own disks, with a 200-line stand-in for R2.

Fine print
  1. 1Mounting the Docker socket into Dockge, Beszel and Homepage gives them control of the host, even read-only. That's normal for a box with one admin. A socket proxy in front of the read-only ones is the way to tighten it later.
  2. 2Forgejo's first-run screen is reachable before Caddy is set up, through an SSH tunnel to port 3000.
  3. 3If a network blocks UDP, mosh can't connect at all. Plain ssh with tmux still works, and Eternal Terminal gives a TCP connection that survives a network change.
  4. 4Values in the commands are placeholders. The list is at /reference.