こんにちは、”はふぃ”です。

前回の記事で作成したサービスをBluemix(IBMのPaaS環境)にデプロイしようとしたらうまくいかなかったので、その内容を書きます。

前提

Angular2の環境構築においては本家のquickstartに従っており、特別なことは何もしていません。

ハマったこと

以下のようなエラーログを吐いてデプロイできませんでした…。

2018-02-04T12:31:12.65+0900 [APP/PROC/WEB/0] ERR Killed
2018-02-04T12:31:12.66+0900 [APP/PROC/WEB/0] ERR npm ERR! code ELIFECYCLE
2018-02-04T12:31:12.66+0900 [APP/PROC/WEB/0] ERR npm ERR! errno 137
2018-02-04T12:31:12.66+0900 [APP/PROC/WEB/0] ERR npm ERR! [サービス名]@0.0.1 start: `ng serve`
2018-02-04T12:31:12.66+0900 [APP/PROC/WEB/0] ERR npm ERR! Exit status 137
2018-02-04T12:31:12.66+0900 [APP/PROC/WEB/0] ERR npm ERR!
2018-02-04T12:31:12.66+0900 [APP/PROC/WEB/0] ERR npm ERR! Failed at the [サービス名]@0.0.1 start script.
2018-02-04T12:31:12.66+0900 [APP/PROC/WEB/0] ERR npm ERR! This is probably not a problem with npm. There is lik
ely additional logging output above.
2018-02-04T12:31:12.69+0900 [APP/PROC/WEB/0] ERR npm ERR! A complete log of this run can be found in:
2018-02-04T12:31:12.69+0900 [APP/PROC/WEB/0] ERR npm ERR!     /home/vcap/app/.npm/_logs/2018-02-04T03_31_12_662
Z-debug.log

このエラーログだけだと情報が少なすぎて原因がわからなかったのですが、色々と調べた結果、startコマンドであるng serveがBluemix上だとうまくいっていないようでした。

解決策

expressを使ってstartコマンド:node app.jsで起動できるようにすることに。

下記のQiita記事の「サーバーサイド・コードの組み込み」を参考にpackage.jsonなどを修正したらすんなりpushできるようになりました。

Bluemix DevOps で Angular をデプロイする

最後に

上記の記事は問題が発生した当初に発見していたものの、expressを使わずAngular2だけで解決したいという謎のプライドが邪魔をして結局時間を浪費する羽目に…。
でも、何でng serveで起動できないんだろう…?
(もちろん@angular/cliはinstallしているのでngコマンドが使えない訳ではないはず)

投稿者: はふぃ

若手のWEBフロントエンジニア。最近はバレーボールにハマってます!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA