Node.js 在AWS上部署react web应用程序

Node.js 在AWS上部署react web应用程序,node.js,reactjs,amazon-web-services,amazon-s3,deployment,Node.js,Reactjs,Amazon Web Services,Amazon S3,Deployment,我希望在AWS上部署我的nodejs React web应用程序。目前,我在微软的Azure上部署了我的应用程序,这非常简单。我只需要添加一个应用程序服务,并将我的git存储库作为它的源。它负责托管我的应用程序。我没有办法在AWS上这样做。我在找这样的东西。我应该如何在AWS中完成它 您可以使用AWS Elastic Beanstalk进行此操作。Elastic Beanstalk是PaaS产品,它是一种易于使用的服务,用于部署和扩展使用Java、.NET、PHP、Node.js、Python、

我希望在AWS上部署我的nodejs React web应用程序。目前,我在微软的Azure上部署了我的应用程序,这非常简单。我只需要添加一个应用程序服务,并将我的git存储库作为它的源。它负责托管我的应用程序。我没有办法在AWS上这样做。我在找这样的东西。我应该如何在AWS中完成它

您可以使用AWS Elastic Beanstalk进行此操作。Elastic Beanstalk是PaaS产品,它是一种易于使用的服务,用于部署和扩展使用Java、.NET、PHP、Node.js、Python、Ruby、Go和Docker在熟悉的服务器(如Apache、Nginx、Passenger和IIS)开发的web应用程序和服务。它类似于Microsoft Azure应用程序服务

您只需上传代码,Elastic Beanstalk就会自动处理部署,从容量调配、负载平衡、自动扩展到应用程序运行状况监视。同时,您可以完全控制为应用程序供电的AWS资源,并可以随时访问底层资源


您可以在此处浏览部署node.js应用程序的教程-

您可以使用AWS Elastic Beanstalk进行此操作。Elastic Beanstalk是PaaS产品,它是一种易于使用的服务,用于部署和扩展使用Java、.NET、PHP、Node.js、Python、Ruby、Go和Docker在熟悉的服务器(如Apache、Nginx、Passenger和IIS)开发的web应用程序和服务。它类似于Microsoft Azure应用程序服务

您只需上传代码,Elastic Beanstalk就会自动处理部署,从容量调配、负载平衡、自动扩展到应用程序运行状况监视。同时,您可以完全控制为应用程序供电的AWS资源,并可以随时访问底层资源


您可以在此处阅读有关部署node.js应用程序的教程-

以无服务器方式实现此目的的简单方法之一是使用新的AWS Mobile CLI:

npm install -g awsmobile-cli
然后初始化并发布:

cd ./myproj
awsmobile init #answer some questions
awsmobile publish
这将设置一个S3存储桶,并将CloudFront配置为您的CDN,以承载您的web资产。您的NodeJS应用程序可以托管在受API网关保护的Lambda函数中。从客户端配置连接和授权的一个好方法是在React应用程序中使用AWS Amplify:

npm install aws-amplify --save
npm install aws-amplify-react --save
然后在执行
Amplify.configure(您的_config_对象
之后,您可以连接到调用Lambda的API网关:

let apiName = 'MyApiName';
let path = '/path'; 
let myInit = { // OPTIONAL
    headers: {} // OPTIONAL
}
API.get(apiName, path, myInit).then(response => {
    // Add your code here
});
这将是对AWS资源的签名请求

详情如下:

以无服务器方式执行此操作的简单方法之一是使用新的AWS Mobile CLI:

npm install -g awsmobile-cli
然后初始化并发布:

cd ./myproj
awsmobile init #answer some questions
awsmobile publish
这将设置一个S3 bucket,将CloudFront配置为您的CDN,以托管您的web资产。您的NodeJS应用程序可以托管在受API网关保护的Lambda函数中。从客户端配置连接和授权的一个好方法是在您的React应用程序中使用AWS Amplify:

npm install aws-amplify --save
npm install aws-amplify-react --save
然后在执行
Amplify.configure(您的_config_对象
之后,您可以连接到调用Lambda的API网关:

let apiName = 'MyApiName';
let path = '/path'; 
let myInit = { // OPTIONAL
    headers: {} // OPTIONAL
}
API.get(apiName, path, myInit).then(response => {
    // Add your code here
});
这将是对AWS资源的签名请求

详情如下: