构build一个自定义的节点 – 红色图像

我想制作我自己的Node-RED docker镜像,所以当我启动它时,stream将被加载,并且Node-RED已经准备好了。

我想要加载的stream被放置在'flows.json'文件中。 而当我通过接口手动导入它工作正常。

Docker的Node-RED文档build议使用自定义stream程来启动Node-RED

$ docker run -it -p 1880:1880 -e FLOWS=my_flows.json nodered/node-red-docker 

但是,当我尝试这样做时,stream程最终是空的。

我怀疑这必须做一些事实,我试图加载的stream程是使用'node-red-node-mongodb'插件,这是不是默认安装。

我如何构build已经安装了“node-red-node-mongodb”的Node-RED映像?

如果需要更多信息,请询问。

UPDATE

我做了下面的Dockerfile:

 FROM nodered/node-red-docker RUN npm install node-red-node-mongodb 

然后我用它来build立它:

 docker build -t testenvironment/nodered . 

并开始与它:

 docker run -d -p 1880:1880 -e FLOWS=flows.json --name node-red testenvironment/nodered 

但是当我去Node-RED接口时,没有stream量。 另外我没有看到边栏中的MongoDB节点。

Node-RED站点上的文档包含有关如何自定义Docker镜像和添加额外节点的说明。 您可以通过使用docker execlogin到现有映像并使用npm手动安装节点来完成

 # Open a shell in the container docker exec -it mynodered /bin/bash # Once inside the container, npm install the nodes in /data cd /data npm install node-red-node-mongodb exit # Restart the container to load the new nodes docker stop mynodered docker start mynodered 

否则,您可以通过创build自己的Docker文件来扩展映像:

 FROM nodered/node-red-docker RUN npm install node-red-node-mongodb 

然后用它来构build

 docker build -t mynodered:<tag> .