Unsupported engine node / NPM only when building in Docker

29,009

Solution 1

Try to remove package-lock.json before npm install in Docker

rm package-lock.json
npm i

Solution 2

The engines property in the package.json allows us to establish a range of versions.

With >=12 is asking for a node with version 12 or greater.

Therefore, the solution would be to install the requested version:

FROM node:12

Anyway, I recommend reviewing the versions supported by Docker currently here.

Share:
29,009
Greg Peckory
Author by

Greg Peckory

Updated on July 29, 2022

Comments

  • Greg Peckory
    Greg Peckory almost 2 years

    I have a dependency in my package.json which itself has the following dependency:

    "node-rdkafka": "^2.5.0",

    Using nvm on my local machine and setting my node version to 8.9.1, and my npm version is 5.5.1, I can successfully run

    npm install [email protected]

    But when running the same thing (i.e npm install) from within my docker image:

    FROM node:10.13.0-alpine or FROM node:8.9.1-alpine

    I get the following error:

    npm ERR! notsup Unsupported engine for [email protected]: wanted: {"node":">=12.0.0"} (current: {"node":"10.13.0","npm":"6.4.1"})
    npm ERR! notsup Not compatible with your version of node/npm: [email protected]
    npm ERR! notsup Not compatible with your version of node/npm: [email protected]
    npm ERR! notsup Required: {"node":">=12.0.0"}
    npm ERR! notsup Actual:   {"npm":"6.4.1","node":"10.13.0"}
    

    Any ideas about this inconsistency?

    I clearly dont need a node version this high. But it says I do.

  • Linas
    Linas over 3 years
    That doesn't fix it for me.