我有一个包含以下组件的无服务器应用程序: 5 个 lambda 函数 1 个与 lambda 集成的 API 1 个静态网站,使用 API 访问带有一堆 js html 和 css 文件的 lambda lambda 正在使用 1 个 dynamoDB 表
我有一个部署 lambdas、API 和 dynamoDB 表的 cloudformation 模板,其输出给出了 API URL。
我的问题是部署应用程序静态部分(html、css、js 文件)的最佳策略是什么?我喜欢在 S3 上托管静态内容。如何从堆栈中获取 API url 并将其粘贴到我的客户端 javascript 文件中并将其部署到给定的 s3 上?是否可以使用一个胖云信息模板来部署整个应用程序?
谢谢!
根据您的应用程序的构建方式,我不确定您是否可以仅使用 cloudformation 来部署它。一个好的策略是在部署 cloudformation 模板后使用 s3 cli 将文件复制到 s3 存储桶。
至于获取 API url,为了让自己更轻松,我建议创建一个 DNS 记录,以便您提前知道它是什么。
您还可以在部署模板后使用 aws cli 来描述堆栈以检索输出的 url。
有一种便捷的方式将 SPA 部署到 S3 和 CloudFront,并轻松在云上设置基础设施! 它称为 SWS Console Quick Cloud Architecture Builder 服务。只需几个简单的输入,您就可以控制 AWS 资源。请参阅下面的文档!
使用 S3 和 CloudFront 将 SPA(React、Vue 等)项目部署到 AWS 时,需要执行一些复杂的任务,例如在 S3 上设置静态 Web 托管并将存储桶链接到 CloudFront。不如使用 Sws Console 服务,它为您的 SPA 项目构建 S3 静态 Web 托管 + CloudFront 的 AWS 云架构,而无需担心这些任务?请参考下面的文档,尝试使用Sws Console Quick Builder工具快速构建AWS架构!