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

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

ただいまの
回答率

88.91%

突如node.jsコードのデプロイができなくなった。

解決済

回答 1

投稿

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

CantRunRiver

score 17

前提・実現したいこと

discord.jsでボット(名前を△△△△△△△△とします)を開発しています。
一昨日は普通にデプロイできたのですが、昨日から急にデプロイができなくなりました。

herokuの仕様などをよく分かってないので、どこがおかしいのか本当に分かりません。

海外でのこういうった問題ではpackage.jsonに原因があることが多いらしいので、
念の為にpackage.jsonの内容も記載します。

発生している問題・エラーメッセージ

git add .

warning: LF will be replaced by CRLF in package.json.
The file will have its original line endings in your working directory

git commit -am "make it better"

[master 6b58e48] make it better
 1 file changed, 1 insertion(+), 2 deletions(-)

git push heroku master

Enumerating objects: 914, done.
Counting objects: 100% (914/914), done.
Delta compression using up to 4 threads
Compressing objects: 100% (828/828), done.
Writing objects: 100% (859/859), 14.88 MiB | 254.00 KiB/s, done.
Total 859 (delta 156), reused 0 (delta 0)
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:        NODE_ENV=production
remote:        NODE_MODULES_CACHE=true
remote:        NODE_VERBOSE=false
remote:
remote: -----> Installing binaries
remote:        engines.node (package.json):  12.18.x
remote:        engines.npm (package.json):   unspecified (use default)
remote:
remote:        Resolving node version 12.18.x...
remote:        Downloading and installing node 12.18.2...
remote:        Using default npm version: 6.14.5
remote:        
remote: -----> Restoring cache
remote:        - node_modules is checked into source control and cannot be cached
remote:
remote: -----> Installing dependencies
remote:        Prebuild detected (node_modules already exists)
remote:        Rebuilding any native modules
remote:        
remote:        > canvas@2.6.1 install /tmp/build_0a47e560b053fe013f9a0d1dae6ac85c/node_modules/canvas
remote:        > node-pre-gyp install --fallback-to-build
remote:
remote:        sh: 1: node-pre-gyp: Permission denied
remote:        npm ERR! code ELIFECYCLE
remote:        npm ERR! errno 126
remote:        npm ERR! canvas@2.6.1 install: `node-pre-gyp install --fallback-to-build`
remote:        npm ERR! Exit status 126
remote:        npm ERR!
remote:        npm ERR! Failed at the canvas@2.6.1 install script.
remote:        npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
remote:
remote:        npm ERR! A complete log of this run can be found in:
remote:        npm ERR!     /tmp/npmcache.Hjul7/_logs/2020-07-05T02_59_22_456Z-debug.log
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:        Some possible problems:
remote:
remote:        - node_modules checked into source control
remote:          https://blog.heroku.com/node-habits-2016#9-only-git-the-important-bits
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 △△△△△△△△.
remote:
To https://git.heroku.com/△△△△△△△△.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/△△△△△△△△.git'

該当のソースコード

package.json

{
  "name": "△△△△△△△△",
  "version": "1.0.0",
  "description": "test",
  "main": "server.js",
  "scripts": {
    "test": "node server.js"
  },
  "author": "me",
  "license": "ISC",
  "dependencies": {
    "canvas": "^2.6.1",
    "discord.js": "^12.2.0",
    "fs": "0.0.1-security",
    "http": "0.0.1-security",
    "sync-request": "^6.1.0",
    "ws": "^7.3.0"
  },
  "engines": {
    "node": "12.18.x"
  }
}

試したこと

補足情報(FW/ツールのバージョンなど)

VScode
npm         6.14.4
ares        1.16.0
brotli      1.0.7
cldr        37.0
http_parser 2.9.3
icu         67.1
llhttp      2.0.4
modules     72
napi        6
nghttp2     1.41.0
node        12.18.0
openssl     1.1.1g
tz          2019c
unicode     13.0
uv          1.37.0
v8          7.8.279.23-node.37
zlib        1.2.11
  • 気になる質問をクリップする

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

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

    クリップを取り消します

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

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

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

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

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

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

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

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

    質問の評価を下げる

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

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

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

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

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

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

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

    詳細な説明はこちら

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

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

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

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

  • hoshi-takanori

    2020/07/05 15:21

    これかな。node のバージョンを 13.3 と明示的に指定すれば良さそうです。
    https://github.com/Automattic/node-canvas/issues/1563

    キャンセル

  • CantRunRiver

    2020/07/05 19:59

    申し訳ございません。エラーが発生しデプロイできませんでした。
    エラー内容は上記と同じです。

    キャンセル

回答 1

checkベストアンサー

+1

Prebuild detected (node_modules already exists)

となっているのでnode_modulesをリポジトリにcommitしていませんか?
buildするnpmパッケージは環境によってビルド方法が異なるので、既に余計な物が入ってしまっていてherokuで落ちているのではないかと思います。
node_modules を .gitignore に追加した上で

git rm -r --cached node_modules
git commit -m 'Remove node_modules'


してからherokuにpushしてみてください。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

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

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

関連した質問

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