[英]Unsupported engine node / NPM only when building in Docker
我的package.json
有一個依賴項,它本身具有以下依賴項:
"node-rdkafka": "^2.5.0",
在我的本地機器上使用nvm
並將我的節點版本設置為8.9.1
,我的npm
版本是5.5.1
,我可以成功運行
npm install node-rdkafka@2.7.1
但是當從我的 docker 鏡像中運行相同的東西(即npm install
)時:
FROM node:10.13.0-alpine
或FROM node:8.9.1-alpine
我收到以下錯誤:
npm ERR! notsup Unsupported engine for node-rdkafka@2.7.1: 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: node-rdkafka@2.7.1
npm ERR! notsup Not compatible with your version of node/npm: node-rdkafka@2.7.1
npm ERR! notsup Required: {"node":">=12.0.0"}
npm ERR! notsup Actual: {"npm":"6.4.1","node":"10.13.0"}
關於這種不一致的任何想法?
我顯然不需要這么高的節點版本。 但它說我願意。
package.json
的engines 屬性允許我們建立一系列版本。
>=12
是要求版本 12 或更高版本的節點。
因此,解決方案是安裝請求的版本:
FROM node:12
無論如何,我建議在此處查看 Docker 當前支持的版本。
嘗試在Docker上npm install
之前刪除package-lock.json
rm package-lock.json
npm i
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.