使用elasticbeanstalk将Reactjs应用部署到AWS

我一直在寻找一种简单的方法来将基本的ReactJS应用程序部署到AWS。 令我惊讶的是,我在EC2上遇到了来自nodejs的未知错误。

在这一点上,当我意识到“ Docker怎么样?”时,我将不知所措。

因此,我决定使用Docker容器,希望使生活变得轻松。

  1. 在本地运行和测试docker。

在项目的根目录中创建以下Dockerfile。

  #使用docker image节点:9.4 
从节点:9.4
  #将源复制到目标容器内。 
  WORKDIR / app 
  #它将现有文件复制到`/ app`目录。 
复制。 / app
  #运行npm install 
运行npm安装
  #启动应用程序。 
CMD npm开始-生产
  #公开容器中正在运行的应用的端口。 
博览会3000

要测试此Dockerfile,请运行docker docker build -t hello-world ,其中-t是为映像创建标签。 docker run -p 8081:3000 ,其中-p将本地计算机的8081端口映射到docker container 3000端口。

访问localhost:8081以检查您的网站是否正常运行。

2.使用elasticbeanstalk将docker部署到aws。

请按照以下步骤操作。

一种。 安装eb-cli工具https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb-cli3-install.html。

b。 创建.dockerignore并添加以下行。

  node_modules 
  npm-debug.log 

C。 将所有工作文件提交到git。 elasticbeanstalk仅部署已提交的文件。

d。 在您的根文件夹中,运行以下命令。

eb init并按照说明进行操作。

eb create创建您要在其中运行应用程序的环境。

eb use 告诉eb-cli使用环境

eb deploy开始将应用程序部署到AWS。

eb open在浏览器中打开应用程序。