【问题标题】:Is it possible to deploy Nuxt SSR application on AWS?是否可以在 AWS 上部署 Nuxt SSR 应用程序?
【发布时间】:2018-11-17 10:17:14
【问题描述】:

我是 AWS 新手。我找不到任何关于如何在 AWS 上部署 Nuxt SSR 应用程序的解释,尽管我可以找到关于如何在那里部署静态 Nuxt 应用程序的解释。是否可以在 AWS 上部署 Nuxt SSR 应用程序?我已经花了很长时间了,所以请让我寻求您的帮助。谢谢。

【问题讨论】:

    标签: amazon-web-services nuxt.js


    【解决方案1】:

    对于 AWS,通常有几种方法可以给猫剥皮。然而,我已经使用 AWS Copilot 部署了一个带有 AWS CloudFront 和 AWS Fargate/ECS 的容器化 SSR NUXT 应用程序。 AWS Amplify 非常适合静态部署。

    如果您实际上是在 ssr: true(这是默认配置)和/或 target: 'server' 中运行 NUXT 应用程序,那么您不能以与部署通常的“静态”Web 应用程序相同的方式部署它(例如,使用 AWS 托管的 S3 不适用于 SSR 应用程序)。因此,如果您运行“nuxt build”来构建应用程序,您将看到一个(隐藏的).nuxt/ 目录将在您的应用程序目录中生成。但是,如果您运行“nuxt generate”,您将在应用程序目录中看到一个未隐藏的 /dist 文件夹。在后一种情况下,您很可能没有利用 NUXT 的 SSR 功能(检查 nuxt.config.js 文件中的 ssrtarget 属性要查看它是否分别是“通用”和/或“服务器”,请参阅 ssr here 和目标 here 上的文档,并且可以使用 CloudFront 或 AWS Amplify 部署到 AWS S3。

    如果您使用的是 SSR,那么来自 AWS 的 this 教程将帮助您将应用程序的容器化版本部署到 AWS ECS。

    更新:本周我与 AWS 进行了交谈,他建议 AWS Amplify 现在支持容器部署,因此您可以将应用程序 docker 化并轻松部署到那里。

    【讨论】:

      【解决方案2】:

      是的,如果您正确配置计算资源,您几乎可以在 AWS 上部署任何东西。静态网站可以直接从 S3 提供服务,但对于那些具有动态后端的网站,您需要使用 EC2 或 Lambda 之类的东西。我找到了使用 Lambda 和无服务器框架部署 Nuxt SSR 应用程序的指南:https://dzone.com/articles/a-crash-course-on-serverless-side-rendering-with-v

      您也可以使用 EC2 实例作为计算引擎,但要做到这一点,您需要安装所有依赖项并管理主机操作系统和 Web 服务器。希望对您有所帮助!

      【讨论】:

      • 您好!谢谢您的回答!您的链接确实对我有所帮助,尽管由于遇到另一个问题,我无法部署到 AWS。不过非常感谢!
      • 我很高兴它有帮助!
      • 我写了关于 AWS Amplify 的教程,如果有人感兴趣的话kodius.com/blog/nuxt-ssr-on-amplify
      • 不建议为此使用 lambda,除非您知道如何解决服务器遇到的冷启动问题
      【解决方案3】:

      现在专门为此提供了一项服务,称为 Fume https://fume.app

      【讨论】:

        猜你喜欢
        • 2019-10-22
        • 2021-02-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-10-17
        • 2011-06-23
        • 1970-01-01
        • 2021-09-23
        相关资源
        最近更新 更多