首页 > 解决方案 > Nodejs在Docker中运行时无法读取属性

问题描述

我正在尝试在 Docker 容器中运行示例 Neo4j Node 项目,但我遇到了 Node 部分的问题。该项目在本地运行良好,但是当我在 docker 容器中运行它时出现此错误:

const neo4j = window.neo4j;
              ^

ReferenceError: window is not defined

我几乎没有 JavaScript / Node 经验,所以只是寻找任何帮助来为我指明正确的方向。

我的 dockerfile 看起来像这样:

FROM node:10
WORKDIR /app
COPY package.json /app
COPY package-lock.json /app
RUN npm config set strict-ssl false
RUN npm cache clean --force && npm install && npm install -g serve
#RUN npm install
COPY . /app
RUN npm run build
COPY serve.json dist/serve.json

CMD ["node", "src/app.js"]
EXPOSE 8080

演示项目是:https ://github.com/neo4j-examples/movies-javascript-bolt

更新 Amir 的评论似乎解决了最初的问题。这是要改变的

const neo4j = window.neo4j;

const neo4j = require("neo4j-driver");

neo4j-driver 是模块的名称。

如果有人有任何想法,现在我会遇到类似的问题:

$(function () {
^

ReferenceError: $ is not defined

标签: javascriptnode.jsdockerneo4j

解决方案


推荐阅读