Replace the community relay-setup guides with a first-party step-by-step guide on the website
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 52/100
- Issue 类型
- 文档
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- docker, nginx, typescript, ubuntu
调研方向
Start with README.md, deploy/README.md, CLI.md, CONFIGURATION.md, and the website/site docs and get-started pages to find the current setup steps and how repository files become website pages. Build the guide from those sources, then verify its commands against the named release on a clean Ubuntu 24.04 VPS and run the website build. Done means the guide and links meet the acceptance criteria, including a working WSS relay, valid NIP-11 response, and successful event publish/read.
由索引模型根据 Issue 内容生成。
描述
Replace the two third-party guides that currently serve as nostream's onboarding path with one guide we own and keep working.
Why
README.md § Full Guide points only at community write-ups:
- "Set up a Paid Nostr relay with Nostream and ZEBEDEE" —
https://docs.zbdpay.com/payments/nostr/nostr-relay. Dead link: 301s tohttps://docs.zbdpay.com/bitcoin/payments/coverage, a generic "Global Support" page with no nostream or relay content. - "Set up a Nostr relay in under 5 minutes" —
https://andreneves.xyz/p/set-up-a-nostr-relay-server-in-under. Still loads (200), but it is a December 2022 Substack post that clones the repo, runspnpm installon the host, writessettings.yamlby hand and fronts it with nginx + certbot. Nothing in it matches today's Compose CLI, the GHCR production image, or thedeploy/bootstrap path.
The website (website/site, deployed to nostream.dev) has no operator guide at all: /get-started is the agent-schematic card and /docs is a set of reference pages (quick start, CLI, configuration, deploy, runbook, Tor/I2P, Redis). Its docs index reads "Every page here is rendered from the repository, so it matches the code" — true for the reference pages, but the only narrative, end-to-end setup path it offers is the README. So both surfaces inherit the same legacy guides.
A reader who wants to stand up a relay without an AI agent currently has no first-party, current, step-by-step path.
What to build
One canonical guide on the website, published under /docs (e.g. /docs/setup), written and reviewed in this repo and rendered from a file in the repo so the "rendered from the repository" claim stays true.
Suggested spine, drawn from deploy/README.md, CLI.md and CONFIGURATION.md — adjust where they disagree:
- What you need — Linux host, Docker Engine + Compose plugin installed from Docker's apt/yum repo (not snap), a domain you control, DNS A/AAAA pointed at the host.
- Get the code —
git cloneandcd nostream; note the release-managed files vs. your.env. - Bootstrap the deploy root —
./deploy/bootstrap.sh /opt/nostream, what it creates,.envpermissions, the generatedSECRET. - Choose the relay image —
ghcr.io/cameri/nostream:<tag>versus a local build, and how pinned tags relate to releases. - Configure
.env—RELAY_URL/ domain, secrets, optional payment processor keys; link toCONFIGURATION.mdrather than duplicating every key. - First start —
docker compose up -d, confirming Postgres and Redis are healthy, migrations ran, and the relay is listening on loopback only. - Put it behind TLS — Caddy or nginx in front (pick one as the primary path), WebSocket upgrade headers, then accept
wss://in a client. - Verify — NIP-11 document over HTTPS,
/healthzand/readyz, publish one event and read it back,nostream info. - Keep it running — updating via
deploy/recreate-relay.sh, backups, log location; link to the deploy runbook and HAProxy page instead of repeating them. - Optional next steps — payments (link to the existing payments section), Tor/I2P page, manual/admin console.
Requirements for the guide:
- Every command must be copy-pasteable and run against the current release. Strip dead or stale commands from the community guides rather than inheriting them.
- State the version it was verified against and how it will be kept current (e.g. reviewed when a release changes
deploy/). - No referral links, no third-party product upsells, no screenshots that go stale.
- Call out what a reader should not do (copy
migrations/to the host, write a fullsettings.yaml, expose the relay port directly) — the traps the old guides taught.
README change: replace the § Full Guide list with a single link to the website guide, plus a one-line "prefer to do it by hand?" pointer to /docs. Keep the in-repo quick starts in place; they are referenced by website/site docs pages and by CLI.md. The line in § Accepting Payments that says "Complete one of the Quick Start guides in this document" should point at whichever path is canonical.
Website change: /docs index gets the guide as the "Start here" card ahead of the reference pages; /get-started gains a visible "or set it up yourself → /docs/setup" link so the schematic is not the only route on that page.
Out of scope
- Rewriting the third-party guides' authors or crediting them differently (a short "further reading" line may remain).
- Provider-specific guides (AWS is issue #645; Railway has its own template).
- Changes to the Rust rewrite's docs.
Acceptance criteria
-
https://nostream.dev/docs/setupexists, is linked from/docsand from/get-started, and is built from a tracked file in the repo. - Following the guide on a clean Ubuntu 24.04 VPS reaches a relay answering
wss://with a valid NIP-11 document and a successful event publish/read, with no step that is not in the guide. -
README.md§ Full Guide no longer links a dead URL and points to the verified guide; the ZEBEDEE/ZBD link is gone. - No command in the guide fails against the release named at its top.
-
pnpm --dir website/site build(or the site's build command) passes.
- 主要语言
- TypeScript
- 星标
- 829
- 派生
- 234
- 平均合并
- 18 小时 43 分钟
- 30 天内合并 PR
- 67
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
cameri/nostream 的其他 Issue
-
Website
难度 2/5 1-3 小时 新手友好度 84/100
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 25/100
维护者通常 1 天内回复
-
fix(website): update operator console film with fresh notifications screenshot可能已有人在做 @Ferryx349 于 1 天前认领。 未关闭bug Website
cameri/nostream#893 · 已指派 1 人 ·
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 25/100
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 30/100
维护者通常 1 天内回复
相似的 Issue
-
[测试] 等待仓库加载后再记录多仓库排序基线可能已有人在做 @myot233 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 84/100
维护者通常 1 天内回复
-
area:arcade p3-medium ready-for-agent testing type:docs
难度 2/5 1-3 小时 新手友好度 76/100
fderuiter/deruiter.dev#2369 ·
维护者通常 1 天内回复
-
area:devenv origin:agent type:bug
难度 2/5 1-3 小时 新手友好度 84/100
overengineeringstudio/effect-utils#1949 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
ccch1mneyyy/dsh-TUI#1631 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
MiniMax-AI/minimax-code#507 ·
维护者通常 1 天内回复