构建自定义 Node-RED 图像
Building a custom Node-RED image
我想制作自己的 Node-RED docker 图像,所以当我启动它时,流程已加载,Node-RED 已准备就绪。
我要加载的流程放在'flows.json'文件中。当我通过界面手动导入它时,它工作正常。
docker 的 Node-RED 文档建议使用以下行来使用自定义流程启动 Node-RED
$ docker run -it -p 1880:1880 -e FLOWS=my_flows.json nodered/node-red-docker
然而,当我尝试这样做时,流程最终为空。
我怀疑这与我尝试加载的流程正在使用默认情况下未安装的 'node-red-node-mongodb' 插件有关。
如何构建已安装 'node-red-node-mongodb' 的 Node-RED 映像?
如果需要更多信息,请询问。
更新
我制作了以下 Dockerfile:
FROM nodered/node-red-docker
RUN npm install node-red-node-mongodb
然后我构建它:
docker build -t testenvironment/nodered .
并开始于:
docker run -d -p 1880:1880 -e FLOWS=flows.json --name node-red testenvironment/nodered
但是当我转到Node-RED界面时没有任何流量。我也没有在边栏中看到 MongoDB 节点。
Node-RED 站点上的 documentation 包含有关如何自定义 Docker 图像和添加额外节点的说明。您可以通过使用 docker exec
登录现有映像并使用 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
否则您可以通过创建自己的 Docker 文件来扩展图像:
FROM nodered/node-red-docker
RUN npm install node-red-node-mongodb
然后用
构建它
docker build -t mynodered:<tag> .
我想制作自己的 Node-RED docker 图像,所以当我启动它时,流程已加载,Node-RED 已准备就绪。
我要加载的流程放在'flows.json'文件中。当我通过界面手动导入它时,它工作正常。
docker 的 Node-RED 文档建议使用以下行来使用自定义流程启动 Node-RED
$ docker run -it -p 1880:1880 -e FLOWS=my_flows.json nodered/node-red-docker
然而,当我尝试这样做时,流程最终为空。
我怀疑这与我尝试加载的流程正在使用默认情况下未安装的 'node-red-node-mongodb' 插件有关。
如何构建已安装 'node-red-node-mongodb' 的 Node-RED 映像?
如果需要更多信息,请询问。
更新
我制作了以下 Dockerfile:
FROM nodered/node-red-docker
RUN npm install node-red-node-mongodb
然后我构建它:
docker build -t testenvironment/nodered .
并开始于:
docker run -d -p 1880:1880 -e FLOWS=flows.json --name node-red testenvironment/nodered
但是当我转到Node-RED界面时没有任何流量。我也没有在边栏中看到 MongoDB 节点。
Node-RED 站点上的 documentation 包含有关如何自定义 Docker 图像和添加额外节点的说明。您可以通过使用 docker exec
登录现有映像并使用 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
否则您可以通过创建自己的 Docker 文件来扩展图像:
FROM nodered/node-red-docker
RUN npm install node-red-node-mongodb
然后用
构建它docker build -t mynodered:<tag> .