设置前置条件
本课程包含帮助您设置使用 AWS Lambda 所需先决条件的说明。
本章将介绍如何安装和配置 AWS SAM(Serverless Application Model)命令行工具及其前置条件。
AWS SAM
AWS Serverless Application Model(SAM)是一套简化使用 AWS Lambda 开发、测试和部署应用程序的工具。SAM 的一部分运行在开发者的本地机器和构建服务器上,帮助准备部署;另一部分则在部署过程中运行于 AWS 数据中心。不幸的是,与许多 AWS 软件一样,这些产品的名称存在重叠。外界通常并不太在意这种区分,因此大家习惯性地统称为 SAM。虽然可以单独使用不同的 SAM 工具,但在大多数情况下它们协同工作,因此对它们进行严格区分并非必要。在本章中,你将学习如何设置运行在开发者机器上的 SAM 第一部分。
该产品此前被称为“SAM-local”,如今 AWS 官方文档将其称为 SAM 命令行界面(SAM CLI)。
你将要安装并使用的主命令行工具名为 sam。在下一章中,你将深入了解运行在 AWS 远程环境中的 SAM 部分。
SAM 开发工具可帮助你完成项目构建与打包、部署到 AWS、调试、模拟 Lambda 执行环境、获取日志以及生成用于测试的示例事件。你可以配置命令行工具,使其与任意编辑器、集成开发环境或构建系统配合使用。许多主流编辑器和开发环境的 AWS 工具包也集成了这些功能,使你能够直接通过可视化界面测试、模拟和调试 Lambda 函数。AWS Cloud9 这一基于云的集成开发环境同样支持 SAM 工具。
请注意:本课程无需遵循提供的设置说明。课程中所有操作指令的练习环境已预先配置好,你可以在交互式代码窗口中直接实践。如果你希望在本地机器上运行代码,可以参考设置步骤。但建议你使用平台提供的交互式窗口进行动手练习,以节省时间和精力。因此,如果你想使用本平台的开发环境,可以直接跳到本课的“配置访问凭据”小节。
安装所需工具
AWS SAM CLI 依赖一组底层工具,以下将逐一说明,但完整的安装指南超出了本课程范围。一旦你知道需要什么,网上很容易找到相关信息,且这些工具的更新通常会第一时间发布在其官方网站上。若你在安装以下工具时遇到问题,或希望采用其他方式管理软件包,请查阅 AWS SAM 开发者指南。
Python
SAM 命令行工具本质上是一组 Python 脚本,因此你需要在本地机器上安装 Python 运行时。你可以使用 Python 2.7 及以上版本,或 Python 3.6 及以上版本。大多数 Linux 和 macOS 系统默认已安装某个版本的 Python。如果你不确定是否已安装,可通过以下命令检查:
1python --version
如果命令报错或显示的是旧版本,则需升级 Python。如需安装或升级,请从 https://www.python.org 下载一键安装包。
PIP
除了 Python 运行时,你还需安装 pip 包管理工具。大多数 Python 安装都已包含它。可通过以下命令检查是否已安装:
1pip --version
如果命令报错,说明系统缺少 pip,请根据 https://pip.pypa.io 提供的说明进行安装。
AWS
最后一个前置条件是基本的 AWS 命令行工具包。几乎所有接触过 AWS 的开发者都已安装这些工具。可通过以下命令检查系统是否已安装:
1aws --version
如果命令报错,可运行以下命令安装:
1pip install awscli
或者,也可从 AWS CLI 文档网站 下载适用于你操作系统的 ZIP 包或二进制安装程序。
在 macOS 上安装
为了让 Python 在 macOS 上正常工作,你还需安装基本的开发命令行工具。可通过以下命令安装:
1xcode-select --install如果你是通过
brew安装的 Python,请确保版本为 2.7 或更高。较旧版本无法良好兼容 SAM。
Docker
SAM 工具使用 Docker(容器管理工具)来模拟本地测试和调试时的 Lambda 执行环境。你不需要安装完整的 Docker 服务,免费的(社区版)Docker Desktop 工具足以满足所有开发需求,包括本课程中的所有示例。如果尚未安装 Docker Desktop,请直接前往 Docker 官网 下载对应操作系统的一键安装包。你无需在生产环境中使用 Docker 来运行代码。
在下一节中,你将学习如何安装 Node.js 和 AWS SAM CLI。