ElasticBeanstalk-容器命令Webpack生成错误



我正试图将我的webpack构建命令从在推送到repo并部署到服务器之前必须运行迁移到让elasticbeanstall扩展运行容器命令。我原以为简单地添加一个带有npm run build的eb扩展就可以像在本地环境中那样生成这个扩展,但我收到了以下错误:

 Command execution failed: Activity failed. (ElasticBeanstalk::ActivityFatalError)
caused by: 
  > app@0.5.0 build /tmp/deployment/application
  > webpack

  npm ERR! Linux 4.14.47-56.37.amzn1.x86_64
  npm ERR! argv "/opt/elasticbeanstalk/node-install/node-v6.14.3-linux-x64/bin/node" "/bin/npm" "run" "build"
  npm ERR! node v6.14.3
  npm ERR! npm  v3.10.10
  npm ERR! file sh
  npm ERR! path sh
  npm ERR! code ELIFECYCLE
  npm ERR! errno ENOENT
  npm ERR! syscall spawn sh
  npm ERR! app@0.5.0 build: `webpack`
  npm ERR! spawn sh ENOENT
  npm ERR!
  npm ERR! Failed at the app@0.5.0 build script 'webpack'.
  npm ERR! Make sure you have the latest version of node.js and npm installed.
  npm ERR! If you do, this is most likely a problem with the app package,
  npm ERR! not with npm itself.
  npm ERR! Tell the author that this fails on your system:
  npm ERR!     webpack
  npm ERR! You can get information on how to open an issue for this project with:
  npm ERR!     npm bugs app
  npm ERR! Or if that isn't available, you can get their info via:
  npm ERR!     npm owner ls app
  npm ERR! There is likely additional logging output above.
  npm ERR! Linux 4.14.47-56.37.amzn1.x86_64
  npm ERR! argv "/opt/elasticbeanstalk/node-install/node-v6.14.3-linux-x64/bin/node" "/bin/npm" "run" "build"
  npm ERR! node v6.14.3
  npm ERR! npm  v3.10.10
  npm ERR! code ELIFECYCLE

这是弹性豆茎配置文件:

container_commands:
  00_npm_build:
    command: "sudo npm run build"

config.json脚本部分:

 "main": "app.js",
  "scripts": {
    "start": "node app.js",
    "build": "webpack",
    "test": "echo "Error: no test specified" && exit 1",
    "sql": "./node_modules/sequelize-cli/lib/sequelize",
    "sql:migrate": "npm run sql db:migrate"
  },

和webpack-config:

module.exports = {
    entry: "./public/index.js",
    output: {
        path: __dirname + "/dist",
        filename: "bundle.js"
    },
    module: {
        loaders: [
            {   
                test: /.js$/, 
                exclude: /node_modules/, 
                loader: "babel-loader"
            },
            {   
                test: /.jsx$/, 
                exclude: /node_modules/, 
                loader: "babel-loader"
            }
        ]
    },
};

这些都不起作用,我只是做了:

-在EBS配置中,我将节点命令设置为npm启动

-在package.json:中

"scripts": {
  ...
  "start": "npx sequelize-cli db:migrate && node index.js"
},

最新更新