本教程介绍如何为 Ruby 开发(包括开发在 Google Cloud上运行的 Ruby 应用)准备本地机器。您可以按照本教程中的说明安装 Ruby 及相关工具。
如需简要了解 Ruby 以及学习如何在 Google Cloud上运行 Ruby 应用,请参阅 Ruby 和 Google Cloud快速入门。
目标
- 安装 Ruby。
- 安装 Bundler。
- 安装编辑器(可选)。
- 安装 Google Cloud CLI。
- 安装 Ruby 版 Cloud 客户端库
- 设置身份验证。
安装 Ruby
Ruby 的安装说明因操作系统而异。您可以按照与您在本地开发机器上所用的操作系统相关的指南安装 Ruby。本教程适用于 Ruby-lang 上列出的稳定的非 EOL(服务终止)Ruby 版本。
macOS
我们建议使用 rbenv 来管理 macOS 上安装的 Ruby。使用 rbenv 可管理您机器上安装的多个 Ruby 版本;使用名为 ruby-build 的 rbenv 插件可添加对 rbenv 的支持,以安装指定的 Ruby 版本。
虽然 macOS 默认包含一个版本的 Ruby,但最好单独安装最新版本的 Ruby 以保持最新,并避免与操作系统使用的默认版本发生冲突。
- 安装 XCode。
在终端中使用以下命令来安装 XCode 的命令行工具:
xcode-select --install按照 homebrew 主页上的说明安装
homebrew。按照 rbenv readme 中的说明,使用
homebrew安装rbenv。homebrew 安装包含ruby-build插件。
详细了解如何使用 rbenv 和 ruby-build 安装不同的 Ruby 版本。
Linux
我们建议使用 rbenv 来管理 Linux 发行版上安装的 Ruby。使用 rbenv 可管理您机器上安装的多个 Ruby 版本;使用名为 ruby-build 的 rbenv 插件可添加对 rbenv 的支持,以安装指定的 Ruby 版本。
按照
rbenvreadme 中的说明,在您的 Linux 发行版上安装rbenv。按照
ruby-buildreadme 中的说明,为rbenv安装ruby-build插件。
详细了解如何使用 rbenv 和 ruby-build 安装不同的 Ruby 版本。
Windows
对于 Windows,我们建议使用以下方法之一:
安装 Bundler
Bundler 是一种 Ruby gem,用于管理在名为 Gemfile 的文件中定义的项目 gem 依赖项。 Google Cloud文档中的 Ruby 示例使用 Gemfile 文件来指定所需的 gem 和版本。
安装 Bundler。
gem install bundler
安装
Gemfile中定义的gem依赖项。bundle install
仅使用
Gemfile中定义的 gem 运行 Ruby 项目。bundle exec ruby app.rb
如需详细了解如何创建 Gemfile,请参阅 Bundler 文档。
安装编辑器
用于开发 Ruby 应用的热门编辑器(排名不分先后)包括但不限于:
- Jon Skinner 的 Sublime Text
- GitHub 的 Atom
- JetBrains 的 RubyMine
- Vim the editor 的 Vim
这些编辑器(有时借助于插件)可为您提供从语法突出显示、智能感知、代码补全到完全集成式调试功能的所有能力,从而最大程度提高 Ruby 开发效率。
安装 gcloud CLI
gcloud CLI 是一套适用于 Google Cloud的工具。它包含 gcloud 和 bq,可用于通过命令行访问 Compute Engine、Cloud Storage、BigQuery 以及其他产品和服务。这些工具既能以交互方式使用,也可以在自动化脚本中运行。
bundle exec ruby app.rb -p 8080 启动该应用:
gcloud app deploy
了解如何在 App Engine 柔性环境中部署 Ruby on Rails 应用。
安装 Ruby 版 Cloud 客户端库
Ruby 版 Cloud 客户端库是 Ruby 开发者将应用与 Google Cloud服务集成时采取的惯用方式。您可为个别 API 安装 Cloud Storage 等软件包,如下所示:
gem install google-cloud-storage
您也可以使用 Bundler 并将 gem 添加到您的 Gemfile 依赖项,例如:
bundle add google-cloud-storage
设置身份验证
如需在本地开发环境中使用 Cloud 客户端库,请设置应用默认凭据。
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
如需了解详情,请参阅使用客户端库时进行身份验证。