1. 概述和设置
3m

注意!此课程已被弃用,不再维护。部分内容可能已过时。要继续你的 Apollo 之旅,请查看 支线任务:使用 Railway 部署 Apollo 应用程序GraphOS 入门.

🚀这是起飞收官之作!

欢迎来到我们的起飞系列最终部分! 👋在这个系列中,我们共同使用 GraphQL 构建了一个功能齐全的全栈应用程序。

我们的 Catstronauts 应用程序在主页上显示了学习轨迹列表,单轨迹及其使用 的模块,以及使用 !更新给定轨迹的浏览量。

那么缺少什么呢?现在,所有内容都在我们的本地机器上工作。如果我们希望世界上所有有抱负的宇航员都能使用我们的应用程序,我们需要将其部署到生产环境! 🚀

为此,我们将使用 Apollo 生态系统的一个核心部分: 架构注册表。我们将了解它如何帮助我们跟踪架构更改、监控使用情况和扩展 API。

快速免责声明:本课程并非 全部部署应用的详尽教程。有太多选项,从服务器实例到 ,所有选项都有无数的形状、大小和配置。

为了简单起见,我们将坚持一个用例,使用免费的知名第三方解决方案: GitHubRailway。如果你使用其他解决方案,部署流程可能略有不同,但请注意我们将进行的特定于代码的配置!

☑️ 必备条件

我们的应用在后端使用 Node.js,在前端使用 React。本课程可以独立完成,但建立在 Lift-off 系列中之前介绍的概念之上。

注意:在本课程中,我们使用的是 3。如果你需要 参考 Apollo 文档在完成课程时,请确保你使用的是 v3 文档集!

你还需要 Git已安装在你的电脑上,并应该有一些经验,特别是如何添加、提交和推送变更。

让我们开始动手设置项目!

🔧 项目设置

为清楚起见,在部署过程中,serverclient应用已分拆为两个单独的仓库。在之前的课程中,这两个应用位于同一个仓库中。

若要继续学习,你需要在本地和自己的 GitHub 帐户中克隆这些仓库。最简单的方法是 fork 两个仓库,然后在本地克隆它们。

如果你没有 GitHub 帐户,可以 在这里免费创建一个

任务!

让我们从 server 仓库开始。

登录你的 GitHub 帐户后,转到入门 server仓库: https://github.com/apollographql/odyssey-lift-off-part5-server

点击右上角的 分支。现在你在自己的 GitHub 帐户中得到了该仓库的副本!

注意:你可以选择重命名已分支的仓库。我们建议将仓库名称长度控制在 32 个字符以内,以免在部署到 Railway 时出现问题。

Screenshot of GitHub with a forked copy of the starter `server` repo
任务!

在使用首选终端机选择一个目录中,克隆你之前分支的应用程序。

git clone [your-forked-app-github-link]
任务!

然后,导航到该文件夹并运行

npm install && npm start
任务!

接下来,进入 client 仓库。

我们将按照与 server 仓库相同的步骤操作。你可以在此处查找 client 仓库: https://github.com/apollographql/odyssey-lift-off-part5-client

客户端设置

我们现在应该看到客户端应用正在 localhost:3000 上的浏览器中运行!

登录 Apollo

要将我们的应用部署到生产环境,并且 到生产环境,我们将使用 Apollo 架构注册表。为此,我们需要登录 Apollo Studio。如果你还没有账户,现在是 在这里创建 的绝佳时机。

任务!

我们的项目已完成设置,一切准备就绪! 💪🏽

下一步

分享你对本课的疑问和评论

你的反馈有助于我们改进!如果你遇到困难或困惑,请告知我们,我们会帮助你。所有评论都是公开的,并且必须遵守 Apollo 行为准则。请注意,已解决或已回复的评论可能会被删除。

你需要使用 GitHub 账户才能在下方回复。没有账户? 改在我们的 Odyssey 论坛中发帖。