'I keep getting a h10 error on heroku after a successful deploy

I have tried searched and looked at others answer to similar question but non of them worked, please help.

Here is the error I received in console.

2022-05-17T21:18:16.026881+00:00 app[web.1]: at Module._compile 

(node:internal/modules/cjs/loader:1105:14)
2022-05-17T21:18:16.026881+00:00 app[web.1]: at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)2022-05-17T21:18:16.026881+00:00 app[web.1]: at Module.load (node:internal/modules/cjs/loader:981:32)
2022-05-17T21:18:16.026881+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:822:12) {
2022-05-17T21:18:16.026882+00:00 app[web.1]: code: 'ERR_DLOPEN_FAILED'
2022-05-17T21:18:16.026882+00:00 app[web.1]: }
2022-05-17T21:18:16.139886+00:00 heroku[web.1]: Process exited with status 1
2022-05-17T21:18:16.292720+00:00 heroku[web.1]: State changed from starting to crashed
2022-05-17T22:52:21.606239+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=livelyapp.herokuapp.com request_id=92863718-fff6-4dd4-925c-10ccc9a6a53c fwd="197.210.29.29" dyno= connect= service= status=503 bytes= protocol=https
2022-05-17T22:52:23.232426+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=livelyapp.herokuapp.com request_id=a170ab83-06b5-4ee8-b82e-fd1df99e9630 fwd="197.210.29.29" dyno= connect= service= status=503 bytes= protocol=https
2022-05-18T00:37:21.346570+00:00 heroku[web.1]: State changed from crashed to starting
2022-05-18T00:37:29.343314+00:00 heroku[web.1]: Starting process with command `node server.js`
2022-05-18T00:37:31.070030+00:00 app[web.1]: node:internal/modules/cjs/loader:1189
2022-05-18T00:37:31.070042+00:00 app[web.1]: return process.dlopen(module, path.toNamespacedPath(filename));
2022-05-18T00:37:31.070042+00:00 app[web.1]: ^
2022-05-18T00:37:31.070043+00:00 app[web.1]:
2022-05-18T00:37:31.070043+00:00 app[web.1]: Error: /app/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node: invalid ELF header
2022-05-18T00:37:31.070043+00:00 app[web.1]: at Object.Module._extensions..node (node:internal/modules/cjs/loader:1189:18)
2022-05-18T00:37:31.070044+00:00 app[web.1]: at Module.load (node:internal/modules/cjs/loader:981:32)
2022-05-18T00:37:31.070044+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:822:12)
2022-05-18T00:37:31.070044+00:00 app[web.1]: at Module.require (node:internal/modules/cjs/loader:1005:19)
2022-05-18T00:37:31.070045+00:00 app[web.1]: at require (node:internal/modules/cjs/helpers:102:18)
2022-05-18T00:37:31.070045+00:00 app[web.1]: at Object.<anonymous> (/app/node_modules/bcrypt/bcrypt.js:6:16)
2022-05-18T00:37:31.070045+00:00 app[web.1]: at Module._compile (node:internal/modules/cjs/loader:1105:14)
2022-05-18T00:37:31.070046+00:00 app[web.1]: at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)2022-05-18T00:37:31.070046+00:00 app[web.1]: at Module.load (node:internal/modules/cjs/loader:981:32)
2022-05-18T00:37:31.070047+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:822:12) {
2022-05-18T00:37:31.070047+00:00 app[web.1]: code: 'ERR_DLOPEN_FAILED'
2022-05-18T00:37:31.070047+00:00 app[web.1]: }
2022-05-18T00:37:31.193029+00:00 heroku[web.1]: Process exited with status 1
2022-05-18T00:37:31.261105+00:00 heroku[web.1]: State changed from starting to crashed
2022-05-18T07:45:19.567202+00:00 heroku[web.1]: State changed from crashed to starting
2022-05-18T07:45:22.394875+00:00 heroku[web.1]: Starting process with command `node server.js`
2022-05-18T07:45:24.058143+00:00 app[web.1]: node:internal/modules/cjs/loader:1189
2022-05-18T07:45:24.058159+00:00 app[web.1]: return process.dlopen(module, path.toNamespacedPath(filename));
2022-05-18T07:45:24.058159+00:00 app[web.1]: ^
2022-05-18T07:45:24.058159+00:00 app[web.1]:
2022-05-18T07:45:24.058160+00:00 app[web.1]: Error: /app/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node: invalid ELF header
2022-05-18T07:45:24.058160+00:00 app[web.1]: at Object.Module._extensions..node (node:internal/modules/cjs/loader:1189:18)
2022-05-18T07:45:24.058160+00:00 app[web.1]: at Module.load (node:internal/modules/cjs/loader:981:32)
2022-05-18T07:45:24.058161+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:822:12)
2022-05-18T07:45:24.058161+00:00 app[web.1]: at Module.require (node:internal/modules/cjs/loader:1005:19)
2022-05-18T07:45:24.058161+00:00 app[web.1]: at require (node:internal/modules/cjs/helpers:102:18)
2022-05-18T07:45:24.058161+00:00 app[web.1]: at Object.<anonymous> (/app/node_modules/bcrypt/bcrypt.js:6:16)
2022-05-18T07:45:24.058162+00:00 app[web.1]: at Module._compile (node:internal/modules/cjs/loader:1105:14)
2022-05-18T07:45:24.058162+00:00 app[web.1]: at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)2022-05-18T07:45:24.058162+00:00 app[web.1]: at Module.load (node:internal/modules/cjs/loader:981:32)
2022-05-18T07:45:24.058162+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:822:12) {
2022-05-18T07:45:24.058163+00:00 app[web.1]: code: 'ERR_DLOPEN_FAILED'
2022-05-18T07:45:24.058163+00:00 app[web.1]: }
2022-05-18T07:45:24.223717+00:00 heroku[web.1]: Process exited with status 1
2022-05-18T07:45:24.311901+00:00 heroku[web.1]: State changed from starting to crashed
2022-05-18T08:48:08.000000+00:00 app[api]: Build started by user [email protected]
2022-05-18T08:48:28.808471+00:00 app[api]: Deploy ed74bec9 by user [email protected]
2022-05-18T08:48:28.808471+00:00 app[api]: Release v9 created by user [email protected]
2022-05-18T08:48:30.000000+00:00 app[api]: Build succeeded
2022-05-18T08:48:30.172466+00:00 heroku[web.1]: State changed from crashed to starting
2022-05-18T08:48:32.484549+00:00 heroku[web.1]: Starting process with command `node server.js`
2022-05-18T08:48:33.492277+00:00 app[web.1]: node:internal/modules/cjs/loader:1189
2022-05-18T08:48:33.492293+00:00 app[web.1]: return process.dlopen(module, path.toNamespacedPath(filename));
2022-05-18T08:48:33.492293+00:00 app[web.1]: ^
2022-05-18T08:48:33.492294+00:00 app[web.1]:
2022-05-18T08:48:33.492294+00:00 app[web.1]: Error: /app/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node: invalid ELF header
2022-05-18T08:48:33.492294+00:00 app[web.1]: at Object.Module._extensions..node (node:internal/modules/cjs/loader:1189:18)
2022-05-18T08:48:33.492295+00:00 app[web.1]: at Module.load (node:internal/modules/cjs/loader:981:32)
2022-05-18T08:48:33.492295+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:822:12)
2022-05-18T08:48:33.492295+00:00 app[web.1]: at Module.require (node:internal/modules/cjs/loader:1005:19)
2022-05-18T08:48:33.492296+00:00 app[web.1]: at require (node:internal/modules/cjs/helpers:102:18)
2022-05-18T08:48:33.492296+00:00 app[web.1]: at Object.<anonymous> (/app/node_modules/bcrypt/bcrypt.js:6:16)
2022-05-18T08:48:33.492297+00:00 app[web.1]: at Module._compile (node:internal/modules/cjs/loader:1105:14)
2022-05-18T08:48:33.492297+00:00 app[web.1]: at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)2022-05-18T08:48:33.492297+00:00 app[web.1]: at Module.load (node:internal/modules/cjs/loader:981:32)
2022-05-18T08:48:33.492297+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:822:12) {
2022-05-18T08:48:33.492298+00:00 app[web.1]: code: 'ERR_DLOPEN_FAILED'
2022-05-18T08:48:33.492298+00:00 app[web.1]: }
2022-05-18T08:48:33.596666+00:00 heroku[web.1]: Process exited with status 1
2022-05-18T08:48:33.791426+00:00 heroku[web.1]: State changed from starting to crashed
2022-05-18T08:48:33.794828+00:00 heroku[web.1]: State changed from crashed to starting
2022-05-18T08:48:36.318183+00:00 heroku[web.1]: Starting process with command `node server.js`
2022-05-18T08:48:38.022044+00:00 app[web.1]: node:internal/modules/cjs/loader:1189
2022-05-18T08:48:38.022059+00:00 app[web.1]: return process.dlopen(module, path.toNamespacedPath(filename));
2022-05-18T08:48:38.022059+00:00 app[web.1]: ^
2022-05-18T08:48:38.022060+00:00 app[web.1]:
2022-05-18T08:48:38.022060+00:00 app[web.1]: Error: /app/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node: invalid ELF header
2022-05-18T08:48:38.022060+00:00 app[web.1]: at Object.Module._extensions..node (node:internal/modules/cjs/loader:1189:18)
2022-05-18T08:48:38.022061+00:00 app[web.1]: at Module.load (node:internal/modules/cjs/loader:981:32)
2022-05-18T08:48:38.022061+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:822:12)
2022-05-18T08:48:38.022062+00:00 app[web.1]: at Module.require (node:internal/modules/cjs/loader:1005:19)
2022-05-18T08:48:38.022062+00:00 app[web.1]: at require (node:internal/modules/cjs/helpers:102:18)
2022-05-18T08:48:38.022063+00:00 app[web.1]: at Object.<anonymous> (/app/node_modules/bcrypt/bcrypt.js:6:16)
2022-05-18T08:48:38.022063+00:00 app[web.1]: at Module._compile (node:internal/modules/cjs/loader:1105:14)
2022-05-18T08:48:38.022063+00:00 app[web.1]: at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)2022-05-18T08:48:38.022064+00:00 app[web.1]: at Module.load (node:internal/modules/cjs/loader:981:32)
2022-05-18T08:48:38.022064+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:822:12) {
2022-05-18T08:48:38.022064+00:00 app[web.1]: code: 'ERR_DLOPEN_FAILED'
2022-05-18T08:48:38.022065+00:00 app[web.1]: }
2022-05-18T08:48:38.144327+00:00 heroku[web.1]: Process exited with status 1
2022-05-18T08:48:38.213751+00:00 heroku[web.1]: State changed from starting to crashed
2022-05-18T08:49:24.961992+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=livelyapp.herokuapp.com request_id=741a7893-e3a0-457a-bf07-8b0be1faacd9 fwd="197.210.29.29" dyno= connect= service= status=503 bytes= protocol=https
2022-05-18T08:49:26.356963+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=livelyapp.herokuapp.com request_id=9f8fd422-208c-4767-aa81-a96e9e7110e2 fwd="197.210.29.29" dyno= connect= service= status=503 bytes= protocol=https

And here is my package.json file, is something missing?

{
    "name": "react-project",
    "version": "1.0.0",
    "description": "",
    "main": "server.js",
    "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "node server",
        "dev": "nodemon server"
    },
    "keywords": [],
    "author": "",
    "license": "ISC",
    "dependencies": {
        "bcrypt": "^5.0.1",
        "cookie-parser": "^1.4.6",
        "cors": "^2.8.5",
        "date-fns": "^2.28.0",
        "dotenv": "^16.0.0",
        "express": "^4.17.3",
        "jsonwebtoken": "^8.5.1",
        "mongoose": "^6.2.10",
        "nodemon": "^2.0.15",
        "uuid": "^8.3.2"
    }
}

and my server.js file

require('dotenv').config()
const express = require('express')
const cors = require('cors')
const path = require('path')
const corsOrigin = require('./config/allowedCors')
const { eventLoggerFile } = require('./middleware/eventLoger')
const router = require('./routes/root')
const employee = require('./routes/employee/index')
const register = require('./routes/users/index')
const errorHandler = require('./middleware/errorHandler')
const verifyJWT = require('./middleware/verifyJwt')
const cookieParser = require('cookie-parser');


const app = express()
app.use(express.json())
app.use(express.urlencoded({ extended: true }))
app.use(eventLoggerFile)
app.use(express.static(path.join(__dirname, 'public')))

app.use(cookieParser())

app.use(cors(corsOrigin))

app.use('/', router)
app.use('/api', verifyJWT, employee)
app.use('/ap', register)


app.all('*', (req, res) => {
    res.status(404).send('not found, error')
})

app.use(errorHandler)

const PORT = process.env.PORT || 5000

app.listen(PORT, () => {
    console.log(`server started on port ${PORT}`)
})

Please what am I doing wrong, I have been trying to resolve it since yesterday and nothing has change till now.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source