node.js - 容器中的 Node 红色插件 : Node missing

标签 node.js docker plugins node-red

我为 Node 红色编写了一个自定义 Node ,一切正常。
现在我需要把所有东西都放在一个 docker 容器中。红色 Node 正在运行并安装了依赖项,但 Node 没有显示在界面上。即使我不包含文件,我也没有收到任何错误消息,这是导致独立版本出错的原因。
我的 package.json:

{
    "name": "boolean_nodes",
    "version": "1.0.0",
    "description": "Nodes for boolean operation.",
    "dependencies": {
        "node-red": "*",
        "node-red-contrib-home-assistant-websocket": "*",
        "mqtt": "*"
    },
    "scripts": {
        "start": "node-red"
    },
    "author": "",
    "license": "ISC",
    "node-red": {
        "nodes": {
            "BOOL-Switch": "./data/bool/switch/bool_switch.js",
            "BOOL-AND": "./data/bool/and/bool_and.js",
            "BOOL-OR": "./data/bool/or/bool_or.js",
            "ML-Interface": "mlinterface.js"
        }
    }
}
我的 docker 文件:
FROM nodered/node-red

# Copy package.json to the WORKDIR so npm builds all
# of your added nodes modules for Node-RED
COPY package.json .
RUN npm install --unsafe-perm --no-update-notifier --no-fund --only=production

# Copy _your_ Node-RED project files into place
COPY /data/bool/switch/bool_switch.js /data/bool/switch/bool_switch.js
COPY /data/bool/switch/bool_switch.html /data/bool/switch/bool_switch.html

COPY /data/bool/and/bool_and.js /data/bool/and/bool_and.js
COPY /data/bool/and/bool_and.html /data/bool/and/bool_and.html

COPY /data/bool/or/bool_or.js /data/bool/or/bool_or.js
COPY /data/bool/or/bool_or.html /data/bool/or/bool_or.html
如果尝试了文件的不同路径,但这不会导致任何不同的行为。
如何在容器中获取可能插件?

最佳答案

通常你会将你的 Node 打包为一个 npm 模块,然后 npm 安装它。
在这种情况下,您仍然可以加载我们称之为未正确打包的“本地” Node 。默认情况下,Node-RED 将在 nodes 下查找node-red 用户目录的目录。
在 docker 图像中,/data用作用户目录。
因此,您应该将文件复制到 /data/nodes/ 下的某个位置。

关于node.js - 容器中的 Node 红色插件 : Node missing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62953626/

相关文章:

node.js - 我可以通过一次 Shopify API 调用或 CSV 导入创建多个产品吗?

nginx - 如何更改官方docker镜像nginx的nginx进程用户?

docker - Dockerfile 中的密码

php - 一个php插件架构

python - Django 的扩展和库

amazon-web-services - Jenkins amazon-ecr 插件问题

eclipse - 如何在开发时更改源代码时在 Eclipse/Aptana Studio 中自动重新启动 Node.js 应用程序?

javascript - 如何在 node.js 中创建自定义异步函数

javascript - Node.js:通过电子邮件发送数据作为附件而不保存它

docker - Docker for Windows错误:无法启动服务Spark:容器