我在运行代码时遇到以下错误,
Error: /var/www/courses.com.mm/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs: 1: /var/www/mysite.com.mm/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs: Syntax error: Unterminated quoted string
at Socket.onStderr (/var/www/mysite.com.mm/node_modules/phridge/lib/spawn.js:93:28)
at emitOne (events.js:101:20)
at Socket.emit (events.js:188:7)
at readableAddChunk (_stream_readable.js:176:18)
at Socket.Readable.push (_stream_readable.js:134:10)
at Pipe.onread (net.js:547:20)
请告诉我如何解决。谢谢。
在 GitHub 上查看以下问题:
您似乎已在 1 个平台上安装了二进制文件并在另一个平台上运行它们。根据文档,NPM 希望您在切换平台时运行
npm rebuild
,以重建任何特定于平台的依赖项。
另请参阅 https://github.com/Medium/phantomjs#cross-platform-repositories 了解更多信息。
当我们在本地构建并推送到主机 phantomjs 时,就会发生这种情况。
## base image
FROM node:10.16
ADD ./Resources/node_modules /tmp/node_modules
RUN mkdir /usr/src/app
WORKDIR /usr/src/app
ENTRYPOINT ["/usr/src/app/entrypoint.sh"]
现在构建并执行 Docker,然后转到 Docker 终端并删除所有节点模块,然后在 docker 内执行
npm install