子目录中的弹性 beanstalk 节点应用程序

Man*_*uel 11 git amazon-web-services node.js amazon-elastic-beanstalk

如何强制弹性 beanstalk nodejs 应用程序在子目录服务器中查找服务器应用程序?

我正在构建一个现代 SPA,它在一个 git 项目中具有服务器和客户端应用程序。因此,elastic beanstalk 不能在存储库的根目录中查找服务器应用程序,而是在子文件夹 ./server/ 中查找。客户端 SPA 在 ./client/ 中编码,并在构建过程中构建到服务器文件夹结构内的公共文件夹中。完整构建的客户端版本已签入 git,并且不得在角色出时构建。

所以elastic beanstalk必须在server子目录下npm install和npm run。

示例文件夹结构:

~ git-root
|-- client
|    |-- ...
|
|-- server
|   |-- package.json
|   |-- src
|   |-- public
|   |-- (node_modules)
Run Code Online (Sandbox Code Playgroud)

Kie*_*ran 2

如果您所需的 package.json 位于子目录中,而不是建议的根级别位置,您可以在 git 根目录中添加 Buildfile 和 Profile 文件,以分别向 AWS Elastic Beanstalk 提供自定义构建和运行命令:

~ git-root
|-- client
|    |-- ...
|
|-- server
|   |-- package.json
|   |-- src
|   |-- public
|   |-- (node_modules)
|
|--Buildfile
|--Procfile
Run Code Online (Sandbox Code Playgroud)

构建文件

install: cd server && npm install
Run Code Online (Sandbox Code Playgroud)

过程文件

web: cd server && npm run
Run Code Online (Sandbox Code Playgroud)

Buildfile 和 Procfile 的 AWS 文档