在 AWS 无服务计算 Lambda 和 API 网关服务中,部署多个服务和函数可能是一件繁琐的事情。AWS-Serverless-Deploy-Utils 这个 npm 包可以帮助用户轻松地实现无服务器应用程序的部署。本文将探讨如何使用这个 npm 包。
安装
首先请确保您已经具备使用 npm 包的基本环境,如 Node.js 和 npm。然后就可以使用 npm 包管理器安装 aws-serverless-deploy-utils。
npm install aws-serverless-deploy-utils --save
配置
首先需要在 AWS Management Console 中生成一个访问密钥 ID 和访问密钥 Secret。然后,通过 aws configure 与 AWS CLI 相同的方式,配置着账户并开启 AWS STS, IAM 等相关权限。这里不再赘述。
在项目目录下,创建config.json
文件,并设置相应内容,可参考如下配置:
-- -------------------- ---- ------- - --------- ----------------- -------- ------ ---------- ---------- ---------- --------- -------------- ------ --------- --------------- ------------ --------- ------------- - ----------- --------------- ----------- -------------------- -- ------------------- --------------- --------------------- ----------------------- -
使用
aws-serverless-deploy-utils 的主要功能是使用 CloudFormation 来创建和更新 stack。本 npm 包提供了许多功能,包括服务和函数的创建和更新、API 网关和 Lambda 的关联、错误处理和自定义函数和 CloudFormation 模板等。以下是所需的几个功能,供初学者参考:
创建服务和函数
-- -------------------- ---- ------- ----- - -------------- -------------- - -------------------------------------- ----- --------------- ----- ---------------- ------------- --------------- -------- ---------------- ------------ ----- ----------- ---- -------- --- -------- ---------- ------------ - ----------- - - ------------ - ------ - - --
创建 API 网关
-- -------------------- ---- ------- ----- - ----------- - -------------------------------------- ----- ------------- ------------ --------- ------------ --- ------- ----- ---------- -- ----- -------- -------- -- ----------- ------ ----------- ----- ----- ----- ------------ ---------------------- ----------- ---------------- ------------------ - -------- - ------------------- ---- - -- -------------- - ------------------- ------- -- ------- - ------- - -- -- --
构建并打包部署
就像普通的 npm 构建和打包一样,您需要将package.json
中的scripts
部分配置成
{ "scripts": { "build": "tsc", "deploy": "npm run build && sls deploy --config config.json" }, // ... }
并运行以下命令:
npm run deploy
自定义 CloudFormation 模板
如果你想要自定义 CloudFormation 模板,则请按照以下步骤操作:
- 在项目目录中创建
custom-cf.json
,也可以使用其他名称 - 可以通过 AWS CloudFormation Templates 来构建模板。
- 然后获取这个 npm 包,找到 cloudFormation-custom-generator 这个文件夹,将您的 cloudFormation 模板和 aws-serverless-deploy-utils-utils.json 文件复制到 custom-cf 文件夹中
- 最后执行以下命令:
node ./node_modules/aws-serverless-deploy-utils/lib/scripts/generate-custom-cloudformation.js
总结
aws-serverless-deploy-utils 是一个强大的 npm 包,为无服务计算提供了方便快捷的应用程序部署。在使用这个 npm 包之前,确保您已经仔细阅读了文档,并正确地配置了 AWS 账户。本文介绍了一些 aws-serverless-deploy-utils 的核心功能,供初学者参考。更多详细的文档可以参考官方文档,也可以参考源码进行深度学习。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600568d281e8991b448e4926