私はelasticbeanstalkにノードjsアプリケーションをデプロイしました。インストールされシンボリックリンクされたノードnpmとwebpack。しかし、それ自身がwebpack --config /var/app/current/webpack.prod.config.js
というスクリプトを呼び出すnpm run build-prod
を実行しているとき。終了ステータス-2で次のエラーを取得します。 webpackコマンドを直接実行しても同じことが起こります。私は解決策を探しています。AWS Elastic Beanstalk - npmとwebpackを使用してバンドルJSを構築する方法
[2016-07-26T06:57:36.301Z] INFO [9731] - [Application update [email protected]/AppDeployStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild/postbuild_0_site_web/Command 06_npm_run_build_prod] : Activity execution failed, because:
> [email protected] build-prod /tmp/deployment/application
> webpack --config /var/app/current/webpack.prod.config.js
npm ERR! Linux 4.4.14-24.50.amzn1.x86_64
npm ERR! argv "/opt/elasticbeanstalk/node-install/node-v4.4.6-linux-x64/bin/node" "/bin/npm" "run" "build-prod"
npm ERR! node v4.4.6
npm ERR! npm v2.15.5
npm ERR! file sh
npm ERR! path sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn sh
npm ERR! [email protected] build-prod: `webpack --config /var/app/current/webpack.prod.config.js`
npm ERR! spawn sh ENOENT
npm ERR!
npm ERR! Failed at the [email protected] build-prod script 'webpack --config /var/app/current/webpack.prod.config.js'.
npm ERR! This is most likely a problem with the site-web package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! webpack --config /var/app/current/webpack.prod.config.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs site-web
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!
npm ERR! npm owner ls site-web
npm ERR! There is likely additional logging output above.
npm ERR! Linux 4.4.14-24.50.amzn1.x86_64
npm ERR! argv "/opt/elasticbeanstalk/node-install/node-v4.4.6-linux-x64/bin/node" "/bin/npm" "run" "build-prod"
npm ERR! node v4.4.6
npm ERR! npm v2.15.5
npm ERR! code ELIFECYCLE
コンテナの設定ファイル:package.jsonで
container_commands:
01_node_symlink:
command: "ln -sf `ls -td /opt/elasticbeanstalk/node-install/node-* | head -1`/bin/node /bin/node"
02_npm_symlink:
command: "ln -sf `ls -td /opt/elasticbeanstalk/node-install/node-* | head -1`/bin/npm /bin/npm"
03_npm_install_global_packages:
command: "npm install webpack webpack-cli -g"
04_webpack_symlink:
command: "ln -sf `ls -td /opt/elasticbeanstalk/node-install/node-* | head -1`/bin/webpack /bin/webpack"
#05_webpack_run_build_prod:
#command: "webpack --config /var/app/current/webpack.prod.config.js --progress --colors"
06_npm_run_build_prod:
command: "npm run build-prod"
スクリプト
"scripts": {
"build": "webpack --config webpack.local.config.js --progress --colors",
"build-local": "webpack --config webpack.prod.config.js --progress --colors",
"build-prod": "webpack --config /var/app/current/webpack.prod.config.js",
"server": "node app.js",
"dev-server": "node dev-app.js"
}
そして、私はそれが終わる直接WebPACKのコマンドを実行している05のコメントを解除エラーError: "/var/app/current/site-web/static/assets/app/index.js" is not in the SourceMap.
ビルドスクリプトはローカルで成功していますが、プロダクションではすべての方法でブロックされています。 AWS beanstalk環境でJSをビルドするwebpackコマンドを実行する方法を理解できませんでした。 JSファイルを作成する理想的な方法ではありませんか?
ノード:4.4.6 NPM:2.15.5 のWebPACK:最新
/の/ var /アプリ/現在のかもしれませWebPACKの.prod.config.jsファイルがありませんか? –
ありがとうございます。私は 'eb deploy'を使ってコードを展開し、そこにあるファイルとビルドスクリプトを手動で実行できることを確認するためにsshを使います。 – Babu