如何将 express react 应用程序部署到 aws elastic beanstalk?
Posted
技术标签:
【中文标题】如何将 express react 应用程序部署到 aws elastic beanstalk?【英文标题】:How to deploy express react app to aws elastic bean stalk? 【发布时间】:2018-07-13 11:19:53 【问题描述】:我目前正在尝试将应用程序部署到 aws 作为具有反应前端和 Express 后端的弹性 beanstalk 实例。
这是当前文件结构,client文件夹是create react app
我运行了 create-react-app 附带的 npm run build 脚本,但 eb deploy
部署失败。
我想在 react “client” 文件夹中执行 eb init
还是在 express 主 repo 部分中运行它?是否假设在 express 和 react 部分上都有构建,或者是否有一个脚本/npm 包可以一起构建 express api 和 react 部分?
【问题讨论】:
【参考方案1】:如果我正确理解了您的问题,那么您在部署后会失败,这会在 npm 安装后启动 npm ..
在 package.json 中添加一个预启动脚本,ebs 将在“npm install”之后和 npm start cmd 之前运行“npm run build”,例如:npm app.js 或 npm start
"prestart": "npm run build",
【讨论】:
【参考方案2】:您可以通过两种不同的方式部署您的项目。
第一种方法是只使用命令行
//this command will create new t2.small instance
eb create yourappname --instance_type t2.small
//than for deploy your project
eb deploy
第二种方法
登录到 aws 控制台
进入 elasticbeanstalk 部分
创建新应用程序
然后,进入你电脑上的项目目录,
//Select the instance you already created with using
eb init
//than for uplading your project or any changes you just need to use
eb deploy
请确保在项目目录中编写此命令。您可以使用
仔细检查pwd
【讨论】:
以上是关于如何将 express react 应用程序部署到 aws elastic beanstalk?的主要内容,如果未能解决你的问题,请参考以下文章
将React + NodeJS + Express + MySQL应用程序部署到Heroku仅部署服务器而不是React
使用 Amazon AWS 将 React、Node/Express 和 MySQL Web 应用程序部署到 Web 上
如何在 Windows 上将 docker nginx 与 express 和 react 应用程序连接起来