使用 GitHub Codespaces 进行开发
GitHub Codespace 是一个很好的开发选项。它很棒,因为它托管在云端,我可以轻松确保在此处进行开发的每个人都拥有相同的环境,无需处理本地 docker 安装,可以轻松地将我的本地开发实例公开可用,而且使用新技术也很有趣。
我目前正在重新学习开发,并决定在学习 Discourse 开发的同时学习 GitHub Codespaces,因此我为任何希望在 GitHub Codespace 中开发 Discourse 而不是设置本地环境的人创建了本指南。
在我自己尝试在 GitHub Codespace 中运行 Discourse 时遇到了一系列问题后,我决定编写本指南:
本指南将假设您一无所知,因此我们不会遗漏任何一个步骤即可让您开始工作。我怀疑此过程的某些部分可以在核心存储库级别针对 GitHub Codespace 配置进行改进,或者至少由于我缺乏理解。请随时指出这些问题。
Fork Discourse 存储库
-
导航到
https://github.com/discourse/discourse
-
点击页面右上角的
Fork按钮,然后在下一个页面上点击绿色的Create fork按钮。
-
片刻之后,您将被带到 discourse/discourse 存储库的新 fork:
设置您的 GitHub Codespace
-
点击绿色的
<> Code按钮
-
切换到 Codespaces 选项卡,然后点击绿色的
Create codoespace on main按钮。
-
您将被带到一个新窗口,GitHub 将在此开始创建您的 codespace。这应该需要 1-3 分钟:

-
几分钟后,您将看到您的 GitHub Codespace(这只是浏览器中的 VS Code):
设置您的 Codespace 环境
在您开始运行之前,需要对您的 codespace 环境进行一些配置。
-
通过在 Windows/Linux 上按
Ctrl + Shift + backtick,或在 Mac 上按Cmd + Shift + backtick来创建一个新的 bash shell。您的 shell 应该会从/var/www/discourse目录开始。
-
导航到 discourse 目录:
cd workspace/discourse
- 从项目 Gemfile 安装所有内容
bundle install --gemfile ./Gemfile
命令有点长,但您会看到类似这样的内容:
- 在 development.rb 中添加一个新的 config.hosts
- 从您当前所在的目录(
/var/www/discourse/workspace/discourse)打开文件config/environments/development.rb。 - 找到行
config.hosts << /\A(([a-z0-9-]+)\.)*localhost(\:\d+)?\Z/并在其下方创建新行,然后保存文件:
- 从您当前所在的目录(
config.hosts << /^(.*)\.app\.github\.dev$/
您的文件末尾应该看起来像这样(请注意我截图中的第 102 行):
- 回到终端,运行
bundle exec rake admin:create来创建您的第一个管理员帐户。该命令会要求您选择一个电子邮件和密码(密码必须至少 10 个字符长)
启动您的 引擎 服务器
构建和启动服务器将需要 1-2 分钟。此时,您应该拥有运行和访问应用程序所需的一切。
- 在您所在的同一个终端中,运行以下命令来启动您的服务器:
bin/ember-cli -u
-
将控制台中的
Terminal选项卡切换到PORTS选项卡:
-
使用
Ctrl + click(适用于 Windows/Linux)或Cmd + click(适用于 Mac)点击端口 4200 的Forwarded Address,您将看到您的开发环境!
希望这能帮助其他人开始使用 GitHub Codespaces! ![]()













