在 Cloud Shell 中打开

借助“在 Cloud Shell 中打开”功能,您可以发布一个链接,该链接打开 Cloud Console,并自动将 Git 代码库克隆到 Cloud Shell 中,或使用自定义映像启动 Cloud Shell。它还允许将说明打印到终端,帮助用户与内容进行交互。

“在 Cloud Shell 中打开”功能可帮助开发人员实验代码示例和 API,而无需担心下载 Cloud SDK、安装所需依赖项或搜索相关源文件这些事宜。 本页说明如何将此功能添加到您的 Git 代码库。

目前,只有 GitHub 和 Bitbucket 代码库已列入白名单。如果您想要添加其他代码库,请发送反馈,并在其中说明您希望通过“在 Cloud Shell 中打开”功能使用的代码库类型。

网址参数

“在 Cloud Shell 中打开”链接(可以视情况嵌入到按钮图片中)可添加到 Git 代码库中任意目录的 README.md 中。建议将此链接添加到 Git 代码库的根 README.md。

要向“在 Cloud Shell 中打开”这一交互中添加功能,您必须使用基本网址ssh.cloud.google.com(或 Cloud Console 中以 console.cloud.google.com 开头的任何页面),其中至少包含以下两个网址参数之一:

网址参数 说明 支持的值
cloudshell_git_repo

要克隆的 Git 代码库的网址。

系统将克隆指定的代码库,打开项目文件夹的根目录,并在左侧导航窗格中显示其内容。

Git 代码库的有效网址。

它由列入白名单的网域(GitHub 或 Bitbucket)及由有效字符 [a-zA-Z0-9_-./] 组成的路径构成。

cloudshell_image

指定可在会话期间运行自定义环境的自定义 Docker 映像。这样,您便可以在 Cloud Shell 中提供自定义工具,以与您的代码库搭配使用。请注意,这将创建一个包含临时主目录的临时环境(将在会话结束时删除)。

您可以在 Cloud Shell 中运行“cloudshell launch-tutorial /google/devshell/tutorials/custom-image-tutorial.md”开始本教程。

Google Container Registry 中托管的 Docker 映像的网址。 Docker 映像必须基于 Cloud Shell 基础映像,并且可以公开访问。请注意,打开网址时,大映像将需要一些时间才能下载到 Cloud Shell 虚拟机。

此外,您可以指定以下任一可选参数:

网址参数 说明 支持的值

cloudshell_git_branch

要从 Git 代码库中克隆的特定分支。仅在指定“cloudshell_git_repo”时适用。默认分支是 master。 代码库中的任何有效分支。字符必须已列入以下白名单:[a-zA-Z0-9~_-./:]

cloudshell_working_dir

可让用户登录到命令行的工作目录。 任何有效的文件路径。字符必须已列于以下白名单中:[a-zA-Z0-9~_-./:]

cloudshell_open_in_editor

要在集成的 Theia 编辑器中打开的文件。可以重复使用此参数以指定多个要打开的文件。如果指定了多个文件,它们将按照提供的顺序打开。

指定的文件将在已打开项目右侧的编辑器标签中打开,每个文件一个标签。

文件路径相对于当前目录。如果提供了 working_dir 参数,则这些文件的路径将被视为相对于 working_dir。

任何有效的文件路径。字符必须已列于以下白名单中:[a-zA-Z0-9~_-./:]

cloudshell_print

Git 代码库中的文件,通常包括要打印到终端的说明,用于指导用户接下来的操作。文件路径相对于当前目录。

如果提供了 working_dir 参数,则这些文件的路径将被视为相对于 working_dir。

任何有效的文件路径。字符必须已列于以下白名单中:[a-zA-Z0-9~_-./:]

cloudshell_tutorial

Git 代码库中的教程 Markdown 文件,包括要作为教程启动的说明,用于指导用户完成项目。文件路径相对于当前目录。

具有有效的文件名且格式标准的任何教程 Markdown 文件。

shellonly

仅使用命令行(而不是编辑器)打开。

`true`, `false`

示例

要提供一个链接在 Cloud Shell 中打开示例 Git 代码库,您需要使用 Markdown(如下面的代码段)将此链接嵌入到代码库的 README.md 中:

[![Open in Cloud Shell](https://gstatic.com/cloudssh/images/open-btn.svg)](https://ssh.cloud.google.com/cloudshell/editor?cloudshell_git_repo=http://path-to-repo/sample.git)

如果您希望将此功能嵌入到网站中,则与以上代码段等效的 HTML 代码如下所示:

<a href="https://ssh.cloud.google.com/cloudshell/editor?cloudshell_git_repo=http://path-to-repo/sample.git"><img alt="Open in Cloud Shell" src ="https://gstatic.com/cloudssh/images/open-btn.svg"></a>

如果您想要更具体地定义“在 Cloud Shell 中打开”链接的预期行为,则可以使用下面的表单对参数进行实验,以确定在 Cloud Shell 中打开代码库所需的预期网址。