我正在尝试将我的webpack构建命令从必须运行到推送到仓库并部署到我的服务器之前迁移到让Elasticbeanstalk扩展运行容器命令。我以为只是用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
这是弹性beantalk配置文件:
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配置:
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"
}
]
},
};
答案 0 :(得分:0)
这些都不起作用,我只是做了:
-在EBS配置中,我将节点命令设置为npm start
-在package.json中:
"scripts": {
...
"start": "npx sequelize-cli db:migrate && node index.js"
},