docker部署多个node-red操作过程
docker部署多个node-red操作过程
- 一、docker安装教程
- 二、docker安装node-red
- 2.1 在线安装node-red镜像
- 2.1.1 拉取镜像
- 2.1.2 创建目录并分配权限
- 2.2 离线安装node-red镜像
- 三、 docker操作node-red
- 3.1 部署node-red
- 3.2 查看\关闭\删除容器
- 四、Docker删除Redis镜像
- 五、离线安装node-red节点

回到目录
一、docker安装教程
【docker在线使用安装教程】
【linux系统离线安装docker(分步法&一键法)】
回到目录
二、docker安装node-red
一、node-red官网:https://nodered.org/
二、node-red官网上Docker安装node-red的教程:https://nodered.org/docs/getting-started/docker
2.1 在线安装node-red镜像
2.1.1 拉取镜像
- 查看可用的redis版本,执行命令:
docker search node-red

- 拉取node-red镜像:从Docker Hub上获取node-red官方镜像,执行命令:
docker pull <镜像名称>:<版本号>
# 示例
docker pull nodered/node-red

- 查看本地node-red镜像,执行命令:
docker images
执行后,将会列出本机上所有的Docker镜像列表,包括镜像ID、镜像名称、镜像标签、镜像大小等信息。如下图所示:

从上图可以看出,每个镜像都有一个唯一的ID、一个名称和一些标签(也称为版本)。其中,REPOSITORY字段表示镜像的名称,TAG字段表示镜像的标签,IMAGE ID字段则是该镜像的唯一标识符。
*
查看Docker镜像存储位置:
在Docker中,每个镜像都是由多个层(Layer)组成的。因此,当用户下载或者构建一个Docker镜像时,实际上是将镜像的所有层下载到本地存储中。而在Linux系统中,Docker镜像实际上是存储在/var/lib/docker目录下的。在终端输入下面命令:sudo ls -l /var/lib/docker/
执行后,终端将会显示出/var/lib/docker/目录下所有的文件和文件夹列表。其中,/var/lib/docker/image文件夹是Docker储存镜像的主要位置。在/var/lib/docker/image/overlay2/imagedb/content/sha256目录下,存储了所有已下载的Docker镜像(以镜像ID命名),即所有层的存储位置。在每个镜像ID目录下,都有一个名为“real”或者“diff”文件,代表该层的存储位置。
回到目录
2.1.2 创建目录并分配权限
- 创建目录:
mkidr -p /home/node_red/data - 分配权限:
chmod 777 -R /home/node_red

回到目录
2.2 离线安装node-red镜像
在实际是应用环境中,服务器可能会处在只能访问内网不能访问外网的环境中,因此不能直接通过访问网站下载镜像。此时,需要手动下载,有两种方式:
- 方法1:去docker官网下载镜像的安装包’
- 方法2:从可以访问外网的服务器安装镜像后,将镜像拷贝到本服务器使用 -
建议使用该种方式
操作步骤如下:
- 一、在有外网的服务器上操作:
- 在有外网环境的服务器安装docker环境后,执行命令拉取镜像:
docker pull nodered/node-red - 查看拉取的镜像名称:
docker images

- 新建文件夹存储镜像:
mkdir data - 将镜像保存到磁盘备用,执行命令:
docker save -o /data/node-red.tar nodered/node-red
- 二、在无外网但需要通过docker安装node-red的服务器上操作:
- 通过工具将data目录下的node-red.tar镜像文件移动到需要离线安装nodered的服务器对应目录上(目录可自定义,建议在docker安装包下新建目录/data)

- 在本服务器加载镜像,执行命令:
docker load -i node-red.tar

- 查看镜像是否加载成功,执行命令:
docker images

回到目录
三、 docker操作node-red
3.1 部署node-red
部署命令: sudo docker run -u root:node-red -v /home/node_red:/data --privileged=true -p 1881:1880 --name mynodered1 -d nodered/node-red --restart=always
- -p:端口映射 1881
- -u:用户 root
- -v:数据卷挂载 :将/home/node_red软连接到/data
- -privileged:分配root权限 true
- /home/node_red:数据存储路径
- nodered:docker服务包全称
- –restart=always:设置开机自启动
通过端口的不同,部署多个node-red:
- 端口为1882:
sudo docker run -u root:node-red -v /home/node_red:/data --privileged=true -p 1882:1880 --name mynodered2 -d nodered/node-red --restart=always- 端口为1883:
sudo docker run -u root:node-red -v /home/node_red:/data --privileged=true -p 1884:1880 --name mynodered4 -d nodered/node-red --restart=always
- 查看容器的运行信息,验证node-red容器是否正常运行:
docker ps

- 查看指定容器状态:
docker ps -a | grep node-red
- 查看容器运行日志:docker logs --since 30m <容器名>
此处 --since 30m 为查看此容器30分钟之内的日志情况
- 验证服务:在浏览器里打开:
http://ip:端口

回到目录
3.2 查看\关闭\删除容器
- 查看所有在运行的容器:
docker ps -a - 查看指定容器状态:
docker ps -a | grep node-red - 查看容器运行日志:
docker logs --since 30m <容器名> - 关闭容器:
docker stop <容器名> - 删除容器:
docker rm <容器名>
回到目录
四、Docker删除Redis镜像
- 查看全部镜像 命令:docker images
- 删除镜像 命令 :docker rmi <容器 id>
回到目录
五、离线安装node-red节点
以安装node-red-contrib-loop-processing节点为例
- 一、在已经安装node-red指定节点的服务器操作
- 在已经安装node-red指定节点node-red浏览器界面,查看安装节点,复制节点全称

- 在服务器搜索,找到节点的安装目录,执行命令:
find / -name node-red-contrib-loop-processing - 进入该目录的上级目录,并压缩该文件夹:
tar -zcvf node-red-contrib-loop-processing.tar.gz node-red-contrib-loop-processing/


- 二、在需要离线安装node-red指定节点的服务器操作
-
查找node_modules的位置,执行命令:
find / -name node_modules

-
进入目录,并将上面的压缩包上传至该目录

-
解压缩:
tar -xvf node-red-contrib-loop-processing.tar.gz

-
关闭容器任务:
docker stop 容器名 -
重启容器任务:
docker start 容器名

-
刷新浏览器地址:http://ip:1880,可以看到此时node-red-contrib-loop-processing节点已经可以使用了

回到目录
相关文章:
docker部署多个node-red操作过程
docker部署多个node-red操作过程 一、docker安装教程二、docker安装node-red2.1 在线安装node-red镜像2.1.1 拉取镜像2.1.2 创建目录并分配权限 2.2 离线安装node-red镜像 三、 docker操作node-red3.1 部署node-red3.2 查看\关闭\删除容器 四、Docker删除Redis镜像五、离线安装…...
王兴投资5G小基站
边缘计算社区获悉,近期深圳佳贤通信正式完成数亿元股权融资,本轮融资由美团龙珠领投。本轮融资资金主要用于技术研发、市场拓展等,将进一步巩固和扩大佳贤通信在5G小基站领域的技术及市场领先地位。 01 佳贤通信是什么样的公司? 深…...
【SA8295P 源码分析 (一)】54 - /ifs/bin/startupmgr 程序工作流程分析 及 script.c 介绍
【SA8295P 源码分析】54 - /ifs/bin/startupmgr 程序工作流程分析 及 script.c 介绍 一、startupmgr 可执行程序工作解析1. startupmgr\src\script.c 入口 main 函数:调用 init_loader_and_launcher 解析 scripts 数组二、ifsloader镜像加载流程分析:init_loader_and_launche…...
git 使用
参考 https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E8%8E%B7%E5%8F%96-Git-%E4%BB%93%E5%BA%93 文件的状态变化周期 文章目录 git 基础检查当前文件状态、查看已暂存和未暂存的修改暂存前后的变化跟踪新文件提交更新移除文件移动文件、重命名操作查看提交历史撤消…...
MFC扩展库BCGControlBar Pro v33.6新版亮点 - 图形管理器改造升级
BCGControlBar库拥有500多个经过全面设计、测试和充分记录的MFC扩展类。 我们的组件可以轻松地集成到您的应用程序中,并为您节省数百个开发和调试时间。 BCGControlBar专业版 v33.6已正式发布了,此版本包含了对图表组件的改进、带隐藏标签的单类功能区栏…...
云上攻防-云原生篇KubernetesK8s安全APIKubelet未授权访问容器执行
文章目录 K8S集群架构解释K8S集群攻击点-重点API Server未授权访问&kubelet未授权访问复现k8s集群环境搭建1、攻击8080端口:API Server未授权访问2、攻击6443端口:API Server未授权访问3、攻击10250端口:kubelet未授权访问 K8S集群架构解…...
Django 访问静态文件的APP staticfiles
Django 框架默认带的 APP: django.contrib.staticfiles Django文档中也写明了:如何管理静态文件(如图片、JavaScript、CSS) |姜戈 文档 |姜戈 (djangoproject.com)https://docs.djangoproject.com/zh-hans/4.2/howto/static-file…...
Airbnb 迁移 SwiftUI 实践
从 2022 年开始,Airbnb 的 iOS 团队就认为 SwiftUI 已经足够成熟,可以在他们的官方应用中使用它。但 Airbnb 的工程师 Bryn Bodayle 表示,这需要一个谨慎的转换过程。 Airbnb 的工程师认为,SwiftUI 的主要优势是它的灵活性和可组合性、声明性、简洁性和惯用性,他们希望这…...
爱胜品YPS-1133DN系列打印机与奔图P3301DN打印机耗材更换的简单对比说明
速印机(理想、荣大等)、复印机(夏普、理光、佳能、震旦等全系列)、打印机、扫描仪、传真机、多媒体教学一体机、交互式电子白板、报警器材、监控、监考设备、特种安防设备维护及维修。吴中函 某用户的爱胜品YPS-1133DN Pro、爱胜品…...
“高级小程序开发指南“
目录 引言小程序视图层小程序逻辑层及生命周期总结 引言 随着移动互联网的快速发展,小程序作为一种轻量级的应用形态,在用户使用体验和开发者便捷性方面受到了广泛关注。本篇博客将带你深入探索小程序的视图层和逻辑层,并介绍其生命周期。 …...
分类算法-逻辑回归与二分类
1、逻辑回归的应用场景 广告点击率是否为垃圾邮件是否患病金融诈骗虚假账号 看到上面的例子,我们可以发现其中的特点,那就是都属于两个类别之间的判断。逻辑回归就是解决二分类问题的利器。 2、 逻辑回归的原理 2.1 输入 逻辑回归的输入就是一个线性…...
金融液冷数据中心,噱头还是趋势?
当前,全社会数字化进程加速,金融行业已全面进入数字化和智能化时代。与此同时,随着云计算、分布式架构、大数据分析、通用人工智能等技术的广泛运用,金融行业从数据大集中到分布式融合,金融企业的数据中心建设正围绕其…...
LeetCode 高频题目分类列表
💡 LeetCode 高频面试题分类列表,总共24类,312道题目! 图 133.克隆图 207.课程表 210.课程表 II 399.除法求值 547.省份数量 684.冗余连接 743.网络延迟时间 785.判断二分图 堆 215.数组中的第K个最大元素 295.数据流的中位数 26…...
为什么模方有时候置平之后再打开,置平的地方纹理就缺失了,显示为下图中反光的灰色?
答:一般置平后结构改动多的位置会用灰面填充纹理,可以联动PS或者空三映射进行纹理贴图。 模方是一款针对实景三维模型的冗余碎片、水面残缺、道路不平、标牌破损、纹理拉伸模糊等共性问题研发的实景三维模型修复编辑软件。模方4.0新增单体化建模模块&am…...
k8s基础 随笔
写个笔记,后面再完善 部署第一个应用 为什么先实战水平扩缩?因为这个最简单,首先来部署一个喜闻乐见的nginx kubectl create deployment web --imagenginx:1.14 --dry-run -o yaml > web.yaml --dry-run表示试运行,试一下看…...
c# 关于某管理业务系统对数据统计问题.
1.业务系统主要的就是功能的稳定,流畅性. 最近客户提出某统计功能数据加载到页面很慢.反映到运维工程师处,运维跟我说之后我(研发), 我看了看代码,有几处代码确实需要优化,统计功能调用了4次服务端,每一次客户端调用服务端的时候返回结果3S左右,有三次调用服务端,一共大约耗时…...
nginx 配置相关详解
目录 Nginx的优点 Nginx简介 Nginx的优点 可以高并发连接 内存消耗少 成本低廉 配置文件非常易懂 稳定性高 内置有健康的检查功能 支持Rewrite重写 支持热部署 Nginx与Apache的对比 Nginx多进程工作原理跟设计 Nginx是如何实现高性能的 事件驱动模型 多进程机制…...
解决spring项目中无法加载resources下文件
解决spring项目中无法加载resources下文件 问题发现问题解决步骤一:检查文件名步骤二:确保测试资源目录步骤三:检查文件路径是否正确 问题发现 在学习Spring过程中,TestContext框架试图检测一个默认的XML资源位置。如果您的类被命…...
【广州华锐互动】人体血管器官3D动态展示为医学生提供哪些便利?
人体血管器官3D动态展示是一种采用先进的计算机图形技术和立体成像技术,对人体内部结构和功能进行三维可视化的教学方法。这种教学方式以其独特的优势,正在改变传统的解剖学教学模式,为医学教育带来了革新。 首先,3D动态演示能够提…...
【QT开发笔记-基础篇】| 第四章 事件QEvent | 4.7 拖放事件
本节对应的视频讲解:B_站_链_接 【QT开发笔记-基础篇】 第4章 事件 4.7 拖动事件 本章要实现的整体效果如下: QEvent::DragEnter 当拖动文件进入到窗口/控件中时,触发该事件,它对应的子类是 QDragEnterEvent QEvent::DragLe…...
日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
内存分配函数malloc kmalloc vmalloc
内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
visual studio 2022更改主题为深色
visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中,选择 环境 -> 常规 ,将其中的颜色主题改成深色 点击确定,更改完成...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...
面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...
为什么要创建 Vue 实例
核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...




