Configure Beads Dolt Remote
Configured a persistent beads/Dolt sync remote for this repo using the server-hosted Forgejo instance at
git.deltaisland.io, published Dolt data to refs/dolt/data, and documented the
operational constraints around Nginx Proxy Manager, HTTPS, and SSH reachability.
Summary
The repo now has a committed beads sync target in .beads/config.yaml and the server now has the
required local tooling and credentials to run bd dolt push successfully against Forgejo over HTTPS.
Changes Made
- Installed
bd1.0.4 for thedeltauser. - Installed
dolt2.0.3 in~/.local/bin. - Configured a persistent local Forgejo credential for non-interactive beads/Dolt pushes on this server.
- Added the public beads sync URL to
.beads/config.yaml:
sync:
remote: git+https://git.deltaisland.io/dirtydishes/islandflow.git
- Published the current Dolt history to Forgejo and verified
refs/dolt/dataexists on the remote. - Created a follow-up issue for SSH reachability via DNS/Cloudflare:
islandflow-zsy.
Context
This repo already used beads locally, but it had no Dolt remote configured. Earlier work in the repo had
explicitly noted that bd dolt pull was unavailable because no remote existed.
The server already hosted Forgejo behind Nginx Proxy Manager at git.deltaisland.io, which made an
HTTPS-backed beads remote the lowest-friction persistent option.
Important Implementation Details
-
The public remote URL for collaborators is:
git+https://git.deltaisland.io/dirtydishes/islandflow.git - The actual server-side push path is authenticated locally with a Forgejo personal access token stored only on the server, so the committed repo configuration does not contain secrets.
-
The Nginx Proxy Manager host for
git.deltaisland.ioalready proxies Forgejo on ports 80/443, so no new public port exposure was needed for the working HTTPS path. -
A dedicated Forgejo SSH key was also prepared on the server, but end-to-end SSH to
git.deltaisland.io:2222is still blocked by the current DNS/proxy setup rather than by the host listener itself.
Expected Impact for End-Users
- Future clones can bootstrap beads from the server-backed remote instead of starting with an empty local database.
- Operators can now run
bd dolt pushon this server without manual one-off setup. - Beads issue history is now backed by a persistent remote rather than being local-only state.
Validation
bd version→ 1.0.4dolt version→ 2.0.3bd dolt pushcompleted successfully.git ls-remote https://git.deltaisland.io/dirtydishes/islandflow.git refs/dolt/datareturned a ref.ss -tulpnconfirmed listeners on 80, 443, and 2222.- Inspected the Nginx Proxy Manager config for
git.deltaisland.ioand confirmed HTTPS proxying to the Forgejo container.
Issues, Limitations, and Mitigations
-
SSH hostname reachability: Forgejo is listening on host port
2222, but the current public hostname resolves through a proxy path that does not complete SSH connections. HTTPS remains the supported path today. - Server-local credential material: a local Forgejo token was required so this server can push beads data non-interactively. The secret was kept out of tracked repo files.
- Pre-existing repo dirtiness: unrelated local changes already existed in this working tree and were intentionally left untouched.
Follow-up Work
islandflow-zsy— expose Forgejo SSH on a direct DNS hostname if SSH-based Git/beads sync should work publicly.- If additional machines need write access, create Forgejo credentials or PATs for those operators and use the public HTTPS remote above.