質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.86%

  • Git

    1118questions

    Gitはオープンソースの分散バージョン管理システム(DVCS)です。

  • Heroku

    718questions

    HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

  • GitHub

    681questions

    GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

Herokuで「デプロイ」すると拒否されてしまいます。

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 320

andrew57

score 108

Herokuで「デプロイ」しようとし、このようなコマンドを打つとこんなエラーが出ます。

push コマンド

git push heroku master

エラー内容

Counting objects: 45, done.
Compressing objects: 100% (25/25), done.
Writing objects: 100% (45/45), 9.06 KiB | 0 bytes/s, done.
Total 45 (delta 20), reused 36 (delta 18)
remote: Compressing source files... done.
remote: Building source:
remote: 
remote: -----> Node.js app detected
remote: 
remote: -----> Creating runtime environment
remote:        
remote:        NPM_CONFIG_LOGLEVEL=error
remote:        NPM_CONFIG_PRODUCTION=true
remote:        NODE_VERBOSE=false
remote:        NODE_ENV=production
remote:        NODE_MODULES_CACHE=true
remote: 
remote: -----> Installing binaries
remote:        engines.node (package.json):  4.2.3
remote:        engines.npm (package.json):   unspecified (use default)
remote:        
remote:        Resolving node version 4.2.3...
remote:        Downloading and installing node 4.2.3...
remote:        Detected package-lock.json: defaulting npm to version 5.x.x
remote:        Bootstrapping npm 5.x.x (replacing 2.14.7)...
remote: ERROR: npm is known not to run on Node.js v4.2.3
remote: Node.js 4 is supported but the specific version you're running has
remote: a bug known to break npm. Please update to at least 4.7.0 to use this
remote: version of npm. You can find the latest release of Node.js at https://nodejs.org/
remote:        npm  installed
remote: ERROR: npm is known not to run on Node.js v4.2.3
remote: Node.js 4 is supported but the specific version you're running has
remote: a bug known to break npm. Please update to at least 4.7.0 to use this
remote: version of npm. You can find the latest release of Node.js at https://nodejs.org/
remote: ERROR: npm is known not to run on Node.js v4.2.3
remote: Node.js 4 is supported but the specific version you're running has
remote: a bug known to break npm. Please update to at least 4.7.0 to use this
remote: version of npm. You can find the latest release of Node.js at https://nodejs.org/
remote: /app/tmp/buildpacks/19862b8792e84bd8421ded4660b92dfd1c41d92e19ac0b38c90301adc8ae3e0bd512fa01998af18fc2f0d31a157e9c82e8fdceba1a05e5d29adb8dc2bfaf08e1/lib/failure.sh: line 296: [: : integer expression expected
remote: 
remote: -----> Restoring cache
remote:        Skipping cache restore (not-found)
remote: 
remote: -----> Building dependencies
remote:        Installing node modules (package.json + package-lock)
remote:        ERROR: npm is known not to run on Node.js v4.2.3
remote:        Node.js 4 is supported but the specific version you're running has
remote:        a bug known to break npm. Please update to at least 4.7.0 to use this
remote:        version of npm. You can find the latest release of Node.js at https://nodejs.org/
remote: 
remote: -----> Build failed
remote:        
remote:        We're sorry this build is failing! You can troubleshoot common issues here:
remote:        https://devcenter.heroku.com/articles/troubleshooting-node-deploys
remote:        
remote:        If you're stuck, please submit a ticket so we can help:
remote:        https://help.heroku.com/
remote:        
remote:        Love,
remote:        Heroku
remote:        
remote:  !     Push rejected, failed to compile Node.js app.
remote: 
remote:  !     Push failed
remote: Verifying deploy...
remote: 
remote: !    Push rejected to immense-refuge-84970.
remote: 
To https://git.heroku.com/immense-refuge-84970.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/immense-refuge-84970.git'

一体、このエラーはどういうことなのででょうか?

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • shimitei

    2017/11/03 14:53

    書かれている3行のエラー内容の直前あたりにエラーの原因が出力されているはずです。もう少し前の部分までエラー内容を追記して下さい。

    キャンセル

  • andrew57

    2017/11/03 18:22

    追記しました!

    キャンセル

  • shimitei

    2017/11/03 19:29

    Node.jsアプリのBuild failedでは全部見ないとわからないですね。--> Node.js app detected以降から見せてもらえますか?

    キャンセル

  • andrew57

    2017/11/05 11:45

    遅れましたが、追記致しました。

    キャンセル

回答 1

checkベストアンサー

0

package.jsonに記述しておくと、Herokuで特定バージョンのNode.js、npmを使うように指定できます。
おそらく次のようにNode.js v4.2.3を指定、npmは無指定にしていると思います。

"engines": {
    "node": "4.2.3"
}

npmのバージョンが指定されていないため、Herokuではデフォルトのバージョン(npm 5.x.x)が使われます。

remote: ERROR: npm is known not to run on Node.js v4.2.3
remote: Node.js 4 is supported but the specific version you're running has
remote: a bug known to break npm. Please update to at least 4.7.0 to use this
remote: version of npm. You can find the latest release of Node.js at https://nodejs.org/

ただし、Node.js v4.2.3のバージョンは既知のバグがあってnpmの動作に問題があるようです。
ログにはNode.jsをv4.7.0以上にするように書かれています。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.86%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Git

    1118questions

    Gitはオープンソースの分散バージョン管理システム(DVCS)です。

  • Heroku

    718questions

    HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

  • GitHub

    681questions

    GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。