GitHub Copilot 如何实现 GitHub Pages 零 DNS 配置
本文介绍如何利用 GitHub Copilot CLI 和 Namecheap 技能,在大约 14 分钟内完成从空仓库到在自定义域名上启用 HTTPS 的网站部署,而无需手动编辑任何 DNS 记录。
自定义域名能让项目感觉更真实。但对于许多开发者来说,DNS 这最后一步也是最令人沮丧的:A 记录、CNAME 条目、TTL,以及漫长的等待,让人始终不确定是互联网出了问题还是自己出了问题。
在这篇文章中,我将演示如何在约 14 分钟内将项目从空仓库转变为在自定义域名上运行、并启用 HTTPS 的实时网站,全程无需手动编辑任何 DNS 记录。诀窍是让 GitHub Copilot CLI 驱动工作,并通过社区 Namecheap 技能通过注册商 API 自动处理 DNS。
以下是您将学到的内容:
- 使用 GitHub Pages 发布网站
- 注册一个廉价的域名
- 启用注册商 API 并将其连接到 Copilot CLI
- 将域名指向 GitHub Pages 并进行端到端验证
您需要准备:
- 一个 GitHub 账户(免费版即可)
- 已安装并经过 GitHub Copilot 身份验证的 GitHub Copilot CLI
- 一个 Namecheap 账户,用于购买域名和使用其 API
不需要 DNS 专业知识——这正是重点。让我们开始吧。⤵
第一步:使用 GitHub Pages 发布网站
每次部署都需要有东西可部署,因此先为网站创建一个家:一个新的公共仓库。
有了仓库后,您不必手动编写 index.html、提交,然后自己点击 Pages 设置。您只需向 Copilot CLI 描述您想要的结果,让它为您创建登陆页面并启用 GitHub Pages。
现在网站已在 github.io 网址上线,开局不错。下面给它一个合适的地址。
第二步:注册一个廉价的域名
部署副项目不需要付费的 .com 域名。在本演示中,我选择了最便宜的顶级域名之一 .click,并搜索了一个可用的名称。
ghpagesblog.click 可用,于是我进入结账。
总价 2.00 美元,约合 2.46 加元。对于在副项目上尝试自定义域名来说,这是一个低风险的价格。
第三步:将域名连接到 GitHub Pages
这是开发者通常害怕的一步。在这里,AI 助手完成重复性工作,而您则掌控决策。
启用 Namecheap API 访问
在 Copilot CLI 更新您的 DNS 之前,您需要先打开 Namecheap 的 API。在您的 Namecheap 账户中,进入 Profile → Tools,滚动到 Business & Dev Tools,在 Namecheap API Access 下选择 Manage。
您也可以直接导航到 API 访问设置页面(注意该 URL 可能随时间变化)。
在该页面上,完成三个步骤:
- 将 API 切换为 ON。
- 将调用 API 的机器的公共 IP 添加到 IP 允许列表(Namecheap 将该字段标记为 Whitelisted IPs)。
- 复制 API Key 并安全保存,稍后需要用到。
有关 API 提供的更多详情,请参阅 Namecheap 的 API 介绍。
安装 Namecheap 技能
接下来,通过安装 Namecheap 技能使 Copilot CLI 能够与 Namecheap 通信。只需一条命令:
gh skill install github/awesome-copilot namecheap --scope user
当您第一次要求 Copilot 执行诸如“列出我的 Namecheap 域名”之类的操作时,它会确认技能已配置,并提示您输入用户名。
然后它会要求您输入之前复制的 API 密钥。
凭证就位后,Copilot 会返回您账户中的域名列表。这是一种快速确认一切正确连接的方法,无需进行任何更改。
将域名指向 GitHub Pages
现在将域名连接到网站。要求 Copilot 使用技能配置自定义域名。
良好的自动化会在执行前询问。技能会在触及任何记录之前暂停以确认更改。
一旦您批准,它将用 GitHub Pages A 记录和 WWW 子域的 CNAME 替换现有的托管记录——这正是 GitHub Pages 期望的配置。这符合 GitHub 为 GitHub Pages 站点配置自定义域名的文档步骤。
它还会处理仓库端,提交一个 CNAME 文件,告诉 GitHub Pages 该网站应响应哪个自定义域名。
不使用 Namecheap?相同的方法适用于任何提供 API 的注册商。您不需要专门构建的技能:将 Copilot CLI 指向您的注册商 API 文档,让它读取、理解并使用该 API 为您的域名设置 GitHub Pages 记录。注册商变了,工作流程不变。
第四步:验证部署
Copilot CLI 不会假设成功,而是会检查自己的工作。首先,它确认域名解析。
然后它确认站点返回正常的 HTTP 200 响应。
如果您想查看每个提示和响应,完整的 Copilot CLI 会话可作为 gist 提供。
现在的时间线:域名于美国东部时间上午 11:21:27 购买。
站点在自定义域名上通过 HTTPS 提供服务的时间约为上午 11:35。从一无所有到完全部署的站点,包括 API 设置、技能安装、DNS 配置、传播和验证,大约需要 14 分钟。
总结
DNS 并不难,但很繁琐、容易出错,而且反馈缓慢。通过将 GitHub Pages 与 GitHub Copilot CLI 和 Namecheap 技能配对,自定义域名部署的重复部分变成了一场简短的对话:您做出决策并批准更改,而工具处理管道。
如果您因为 DNS 步骤感觉像杂务而一直推迟自定义域名,那么这个工作流程消除了摩擦。要进一步探索,请查看 GitHub Pages 文档和为 GitHub Pages 站点配置自定义域名的指南,然后在您的下一个项目上尝试。