首页 > 解决方案 > Nodejs ndb 安装错误:无法下载 Chromium r624492

问题描述

操作系统:Ubuntu 18.04

使用非虚拟机

https://www.npmjs.com/package/ndb

安装ndb成功+ndb@1.1.5

但是当我尝试运行ndb server.js时出现错误

Downloading Chromium r624492...
ERROR: Failed to download Chromium r624492!
Error: read ECONNRESET
    at TLSWrap.onStreamRead (internal/stream_base_commons.js:205:27)
  -- ASYNC --
    at BrowserFetcher.<anonymous> (/home/bacillus/.nvm/versions/node/v12.17.0/lib/node_modules/ndb/node_modules/puppeteer-core/lib/helper.js:108:27)
    at downloadChromium (/home/bacillus/.nvm/versions/node/v12.17.0/lib/node_modules/ndb/node_modules/carlo/lib/find_chrome.js:194:50)
    at findChrome (/home/bacillus/.nvm/versions/node/v12.17.0/lib/node_modules/ndb/node_modules/carlo/lib/find_chrome.js:241:32)
    at Object.launch (/home/bacillus/.nvm/versions/node/v12.17.0/lib/node_modules/ndb/node_modules/carlo/lib/carlo.js:594:42)
    at launch (/home/bacillus/.nvm/versions/node/v12.17.0/lib/node_modules/ndb/lib/launcher.js:23:23)
    at Object.<anonymous> (/home/bacillus/.nvm/versions/node/v12.17.0/lib/node_modules/ndb/ndb.js:35:1)
    at Module._compile (internal/modules/cjs/loader.js:1138:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1158:10)
    at Module.load (internal/modules/cjs/loader.js:986:32)
    at Function.Module._load (internal/modules/cjs/loader.js:879:14) {
  errno: 'ECONNRESET',
  code: 'ECONNRESET',
  syscall: 'read'
}
unhandledRejection TypeError: Cannot read property 'executablePath' of null
    at findChrome (/home/bacillus/.nvm/versions/node/v12.17.0/lib/node_modules/ndb/node_modules/carlo/lib/find_chrome.js:242:43)
    at async Object.launch (/home/bacillus/.nvm/versions/node/v12.17.0/lib/node_modules/ndb/node_modules/carlo/lib/carlo.js:594:36)
    at async launch (/home/bacillus/.nvm/versions/node/v12.17.0/lib/node_modules/ndb/lib/launcher.js:23:11)

标签: node.jspuppeteerubuntu-18.04chromiumgoogle-chrome-headless

解决方案


  1. 尝试使用以下命令安装 ndb: PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 sudo npm install -g ndb --unsafe-perm=true --allow-root ftw
  2. 然后运行ndb server.js

推荐阅读