AWS CloudShell 概念 - AWS CloudShell

AWS CloudShell 概念

本节介绍如何与 AWS CloudShell 交互,以及如何对支持的应用程序执行特定操作。

您可以从 AWS Management Console 和 Console Toolbar 中浏览 CloudShell 界面功能。

以下屏幕截图显示了几个关键的 AWS CloudShell 界面功能。

AWS CloudShell 界面的主要功能。
  1. AWS CloudShell 命令行界面,用于使用首选 Shell 运行命令。当前 Shell 类型由命令提示符指示。

  2. 终端选项卡,它使用 AWS CloudShell 当前运行所在的 AWS 区域 位置。

  3. 操作菜单,提供更改屏幕布局下载上传文件、重启AWS CloudShell删除AWS CloudShell主目录的选项。

    注意

    当您在 Console Toolbar 上启动 CloudShell 时,下载选项不可用。

  4. 在新浏览器标签页中打开,提供全屏访问您的 CloudShell 会话的选项。

  5. 首选项选项,可用于自定义 Shell 体验

  6. 底部栏提供以下选项:

    • CloudShell 图标启动 CloudShell。

    • 通过反馈图标提供反馈。选择您要提交的反馈类型,添加您的评论,然后选择提交

      • 要为 CloudShell 提交反馈,请选择以下选项之一:

        • 从控制台启动 CloudShell,然后选择反馈。添加您的评论,然后选择提交

        • 选择控制台左下角 Console Toolbar 上的 CloudShell,然后选择在新浏览器标签页中打开图标和反馈。添加您的评论,然后选择提交

      注意

      当您在 Console Toolbar 上启动 CloudShell 时,反馈选项不可用。

    • 了解我们的隐私政策和使用条款,并自定义 Cookie 首选项。

  7. + 图标是一个下拉菜单,包括创建、重启和删除环境的选项。

在 AWS 区域工作

您正在其中运行的当前 AWS 区域显示为一个选项卡。

AWS CloudShell 界面的主要功能。

您可以通过使用区域选择器选择特定区域来选择工作所在的 AWS 区域。更改区域后,当您的 Shell 会话连接到在选定区域中运行的不同计算环境时,界面会刷新。

重要
  • 您可以在每个 AWS 区域 中使用最多 1GB 的持久性存储。持久性存储保存在您的主目录 ($HOME) 中。这意味着存储在您的主目录中的任何个人文件、目录、程序或脚本都位于同一个 AWS 区域 中。此外,它们与位于主目录中但存储在不同区域中的那些文件不同。

    文件在持久性存储中的长期保留也是按区域管理的。有关更多信息,请参阅 持久性存储

  • 永久存储不适用于 AWS CloudShell VPC 环境。

为 AWS CLI 指定您的默认 AWS 区域

您可以使用环境变量来指定使用 AWS CLI 访问 AWS 服务 所需的配置选项和凭证。当您从 AWS Management Console 中的特定区域启动 AWS CloudShell,或者在区域选择器中选择一个选项时,将设置为 Shell 会话指定默认 AWS 区域 的环境变量。

环境变量优先于由 aws configure 更新的 AWS CLI 凭证文件。因此,您无法运行 aws configure 命令来更改由环境变量指定的区域。相反,要更改 AWS CLI 命令的默认区域,请为 AWS_REGION 环境变量赋值。在以下示例中,将 us-east-1 替换为您所在的区域。

Bash or Zsh
$ export AWS_REGION=us-east-1

设置环境变量会更改使用的值,直到 Shell 会话结束或当您将该变量设置为其他值时。通过在 Shell 的启动脚本中设置变量,可使变量在未来的会话中继续有效。

PowerShell
PS C:\> $Env:AWS_REGION="us-east-1"

如果在 PowerShell 提示符下设置环境变量,则环境变量仅保存当前会话持续时间的值。或者,您可以通过将变量添加到 PowerShell 配置文件来为将来的所有 PowerShell 会话设置该变量。有关存储环境变量的更多信息,请参阅 PowerShell 文档

要确认您已更改默认区域,请运行 aws configure list 命令以显示当前的 AWS CLI 配置数据。

注意

对于特定 AWS CLI 命令,您可以使用命令行选项 --region 覆盖默认区域。有关更多信息,请参阅 AWS Command Line Interface 用户指南中的 Command line options

处理文件和存储

使用 AWS CloudShell 的界面,您可以将文件上传到 Shell 环境,也可以从 Shell 环境中下载文件。有关下载和上传文件的更多信息,请参阅 AWS CloudShell 入门。

为了确保您添加的任何文件在会话结束后仍然可用,您应该知道持久性存储和临时存储之间的区别。

  • 持久性存储:您在每个 AWS 区域 都有 1GB 持久性存储空间。持久性存储在您的主目录中。

  • 临时存储:临时存储空间在会话结束时被回收。临时存储位于主目录之外的目录中。

重要

确保将要保留并用于将来的 Shell 会话的文件保存在您的主目录中。例如,假设您通过运行 mv 命令将某个文件移出主目录。然后,当前 Shell 会话结束时,该文件将被回收。

使用 Docker

AWS CloudShell 无需安装或配置即可完全支持 Docker。您可以在 AWS CloudShell 中定义、构建和运行 Docker 容器。您可以通过 AWS CDK 工具包部署基于 Docker 的资源(例如基于 Docker 容器的 Lambda 函数),也可以构建 Docker 容器并通过 Docker CLI 将其推送到 Amazon ECR 存储库。有关如何运行这两个部署的详细步骤,请参阅以下教程:

通过 AWS CloudShell 使用 Docker 有某些限制:

  • Docker 在环境中的空间有限。如果您的单个映像较大,或者预先存在的 Docker 映像过多,则可能会导致无法拉取、构建或运行其他映像。有关 Docker 的更多信息,请参阅 Docker 文档指南

  • Docker 在除了 AWS GovCloud(美国)区域之外的所有 AWS 区域均可用。有关可以使用 Docker 的区域的列表,请参阅 AWS CloudShell 支持的 AWS 区域

  • 如果您在结合使用 Docker 和 AWS CloudShell 时遇到问题,请参阅本指南的故障排除部分,了解如何解决这些问题。