zordhalo/runs-on.dev · 上手攻略
- 仓库:zordhalo/runs-on.dev
- 链接:https://github.com/zordhalo/runs-on.dev
- 分类:开发者工具 · 基础设施
- 作者:Tom
- 更新:2026-09-04
是什么
runs-on.dev 是一个免费子域名注册服务,允许开发者认领形如 yourname.runs-on.dev 的子域名,并将其指向任意托管平台。本质是一个开源的"子域名注册表"——它的 registry 就是 GitHub 仓库里的一个 JSON 文件目录,没有任何隐藏数据库,git log 就是完整的历史记录,规则全部写在代码里(lib/)。
开发者 zordhalo 在 2026 年初搭建了这项服务(Stars 98,周增 +182,增长迅猛),背后的运营方是 Advance Labs。它与传统的 TLD 注册完全不同:它不是 ICANN 顶级域名,而是一个在已注册域名 runs-on.dev 下分配二级域名的开放注册表。
解决什么问题
个人开发者做作品集、简历页、博客或 side project 时,往往想用一个简短好看的域名(例如 myprofile.runs-on.dev),但:
- 注册真实 TLD 每年约 $10–$15,且需要一个 registry 来运行它;
- GitHub Pages、Netlify、Vercel 的默认 URL 后缀(github.io、vercel.app)不够个性化;
- is-a.dev / js.org / eu.org 等类似服务虽然免费,但要么限制严格,要么体验较老。
runs-on.dev 的思路是:花一个域名的钱(runs-on.dev 本身约 $10/年),用开放注册表的方式,把二级域名免费分配给所有开发者,既有个性,又没有自建 registry 的麻烦。
快速认领
无需安装任何东西,全程在浏览器完成:
- 打开 runs-on.dev,用 GitHub 账号登录
- 输入你想注册的名称(如
mycoolapp) - 系统会写入一条 JSON 记录到 zordhalo/runs-on.dev/domains/,即
domains/mycoolapp.json - DNS 在数秒内生效,
mycoolapp.runs-on.dev立即可访问(默认显示一个基于你 GitHub 资料生成的 profile card)
资格要求(README 原文): - GitHub 账户至少有 30 天历史 - 账户下至少有一个公开仓库 - 一个账户只能注册一个名称
核心用法
方式一:通过网站管理面板(最简单)
登录后访问 runs-on.dev/manage,选择记录类型并填写内容,保存后自动提交 git commit,DNS 秒级生效。
支持的记录类型:
| 类型 | 格式 | 共存规则 |
|---|---|---|
CNAME |
主机名字符串 | 独立存在,不能与 A/TXT/MX 共用 |
A |
一个或多个 IPv4 地址 | 可与 TXT、MX 共用 |
TXT |
字符串(每条 ≤255 字符) | 可与 A、MX 共用 |
MX |
1–5 条 {priority, value} |
可与 A、TXT 共用 |
URL |
一个完整 http(s):// 字符串 |
独立存在,不能与任何其他记录共用 |
方式二:通过 Pull Request(适合需要审核的场景)
- Fork zordhalo/runs-on.dev
- 在
domains/目录下新建<name>.json,内容如:
{
"name": "mycoolapp",
"owner": { "github": "mygithubhandle" },
"claimedAt": "2026-01-01T00:00:00.000Z",
"records": {}
}
- 添加
records(对外服务)和可选的subdomains(一层子域)配置,提交 PR - CI 自动用
schema/record.schema.json做校验,通过后合并,GitHub Actions 自动推送 DNS
指向具体托管平台(常用配置)
Vercel(最快)
"records": { "CNAME": "cname.vercel-dns.com" }
然后在 Vercel 项目设置中把 you.runs-on.dev 加为自定义域名,Vercel 会提示相同的 CNAME 目标。
Bluesky AT Protocol(无需托管)
"subdomains": {
"_atproto": { "TXT": ["did=did:plc:你的DID"] }
}
在 Bluesky 个人资料设置里把 _atproto.myname.runs-on.dev 填入即可验证。
GitHub Pages、Netlify、Railway 等九种平台的完整配置示例见 docs/guides.md。
典型适用场景
- 个人简历/作品集页:一个好看的
myname.runs-on.dev比myname.vercel.app更有辨识度 - 简历链接:在简历上放
resume.runs-on.dev指向你的静态站点,比 GitHub Pages URL 简短 - side project 首页:项目名
.runs-on.dev作为正式落地页 - 开发者主页:集成了 GitHub 资料的默认 profile card,无需额外配置
- Bluesky / Discord 验证:用 TXT 记录验证社交平台身份,无需搭建服务器
坑与注意
- CNAME 不能与 A/TXT/MX 共用:如果你同时需要 MX(邮件)和 CNAME,是做不到的,需要用 A 记录替代。
- 30 天 + 有公开仓库的限制:新注册的 GitHub 账户无法使用,但这个门槛本身是合理的(防滥用)。
- URL 类型独占:如果你配置了 URL 重定向,该记录不能与其他任何记录共存。
- 名称不可重命名:一旦
claimedAt写入,只能删掉重新注册新名字,不支持 rename 操作。 - 运营商 Advance Labs 的可靠性:这是一个个人运营的服务(Stars 98,周增 +182 说明正在快速获得关注),但背后的
runs-on.dev域名续费依赖运营方。要关注项目的维护状态。 - 生产环境慎用:虽然机制透明(git 即 registry),但目前 Stars 98,属于早期项目,用于正式产品前建议评估风险。
与同类对比
| 方案 | 特点 | 限制 |
|---|---|---|
| runs-on.dev | 免费、简单、记录类型丰富、支持 PR | 依赖第三方运营,非真正 TLD |
| is-a.dev | 免费、最老牌 | 管理较为宽松,界面陈旧 |
| js.org | 面向 JS 项目 | 仅限特定用途,审核较严 |
| eu.org | 免费、历史悠久 | 审核极慢,功能有限 |
| 自购 TLD + Cloudflare | 完全拥有、控制权大 | 需要每年续费,配置稍复杂 |
runs-on.dev 的核心优势是体验最接近真正的 TLD(用户感觉拥有了自己的域名),同时维护成本极低。它比 is-a.dev 更新、更现代,比 eu.org 快得多。
一句话推荐结论
如果你想要一个好看的二级域名指向你的作品集或项目页,又不想折腾 DNS 和每年续费,认领一个 myname.runs-on.dev 是目前最简单可靠的免费方案,前提是你接受它不是真正的 TLD 且依赖第三方运营。