Node-RED容器化

关于Node-RED的任何项目、技术咨询都可联系 vx: _0xffffffffffff, qq: 924219829

建立Node-RED容器

工作目录下应有以下文件.
工作目录

flows.json

该文件为Node-RED应用的源文件, 可以通过export导出.

Dockerfile

FROM nodered/node-red

COPY package.json .
RUN npm install --unsafe-perm --no-update-notifier --no-fund --only=production --registry=https://registry.npm.taobao.org
ENV NODE_RED_CREDENTIAL_SECRET node-red

COPY flows_cred.json /data/flows_cred.json
COPY flows.json /data/flows.json
COPY settings.js /data/settings.js

FROM 基于nodered/node-red镜像进行构建

COPYpackage.json拷贝到容器工作目录, 描述了项目的依赖, 以及项目启动方式

RUN执行命令npm install --unsafe-perm --no-update-notifier --no-fund --only=production --registry=https://registry.npm.taobao.org 此处为安装项目的依赖, 该依赖由package.json描述

ENV设置环境变量NODE_RED_CREDENTIAL_SECRETnode-red 主要用于解析flows_cred.json

COPYflows_cred.json & flows.json & settings.js拷贝到容器/data
flows_cred.json为项目的秘钥文件, 记录数据库连接密码等敏感数据
flows.json项目源文件.
settings.js项目的配置文件.

package.json

{
  "name": "node-red-project",
  "description": "A Node-RED Project",
  "version": "0.0.1",
  "private": true,
  "dependencies": {
    "node-red-dashboard": "~2.30.0",
    "node-red": "1.3.5"
  },
  "scripts": {
    "start": "node node_modules/node-red/red.js /data/flows.json"
  }
}

dependencies 描述了需要的依赖, 依次为dashboard,node-red
scripts下的start描述了容器启动时执行的命令
node node_modules/node-red/red.js /data/flows.json 使用node执行red.js 并把/data/flows.json作为源文件

构建镜像

docker build . -t iot_edge/services:0.1

与构建数据库镜像类似

启动容器

docker run -itd -p 1880:1880 --name edge_services iot_edge/services:0.1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值