当前位置: 首页 > news >正文

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节点

1
回到目录

一、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 拉取镜像

  1. 查看可用的redis版本,执行命令:docker search node-red
    1
  2. 拉取node-red镜像:从Docker Hub上获取node-red官方镜像,执行命令:docker pull <镜像名称>:<版本号>
# 示例
docker pull nodered/node-red

1

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

从上图可以看出,每个镜像都有一个唯一的ID、一个名称和一些标签(也称为版本)。其中,REPOSITORY字段表示镜像的名称,TAG字段表示镜像的标签,IMAGE ID字段则是该镜像的唯一标识符。

*查看Docker镜像存储位置:
  在Docker中,每个镜像都是由多个层(Layer)组成的。因此,当用户下载或者构建一个Docker镜像时,实际上是将镜像的所有层下载到本地存储中。而在Linux系统中,Docker镜像实际上是存储在/var/lib/docker目录下的。在终端输入下面命令:sudo ls -l /var/lib/docker/
1
执行后,终端将会显示出/var/lib/docker/目录下所有的文件和文件夹列表。其中,/var/lib/docker/image文件夹是Docker储存镜像的主要位置。在/var/lib/docker/image/overlay2/imagedb/content/sha256目录下,存储了所有已下载的Docker镜像(以镜像ID命名),即所有层的存储位置。在每个镜像ID目录下,都有一个名为“real”或者“diff”文件,代表该层的存储位置。
1
回到目录

2.1.2 创建目录并分配权限

  1. 创建目录:mkidr -p /home/node_red/data
  2. 分配权限:chmod 777 -R /home/node_red
    1
    回到目录

2.2 离线安装node-red镜像

  在实际是应用环境中,服务器可能会处在只能访问内网不能访问外网的环境中,因此不能直接通过访问网站下载镜像。此时,需要手动下载,有两种方式:

  • 方法1:去docker官网下载镜像的安装包’
  • 方法2:从可以访问外网的服务器安装镜像后,将镜像拷贝到本服务器使用 - 建议使用该种方式

操作步骤如下:

  • 一、在有外网的服务器上操作:
  1. 在有外网环境的服务器安装docker环境后,执行命令拉取镜像:docker pull nodered/node-red
  2. 查看拉取的镜像名称:docker images
    1
  3. 新建文件夹存储镜像:mkdir data
  4. 将镜像保存到磁盘备用,执行命令:docker save -o /data/node-red.tar nodered/node-red
  • 二、在无外网但需要通过docker安装node-red的服务器上操作:
  1. 通过工具将data目录下的node-red.tar镜像文件移动到需要离线安装nodered的服务器对应目录上(目录可自定义,建议在docker安装包下新建目录/data)
    5
  2. 在本服务器加载镜像,执行命令:docker load -i node-red.tar
    6
  3. 查看镜像是否加载成功,执行命令:docker images
    1
    回到目录

三、 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
    2
  1. 查看容器的运行信息,验证node-red容器是否正常运行:docker ps
    4
  • 查看指定容器状态:docker ps -a | grep node-red5
  • 查看容器运行日志:docker logs --since 30m <容器名>

此处 --since 30m 为查看此容器30分钟之内的日志情况
1

  1. 验证服务:在浏览器里打开:http://ip:端口
    6
    回到目录

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指定节点的服务器操作
  1. 在已经安装node-red指定节点node-red浏览器界面,查看安装节点,复制节点全称
    1
  2. 在服务器搜索,找到节点的安装目录,执行命令:find / -name node-red-contrib-loop-processing
  3. 进入该目录的上级目录,并压缩该文件夹:tar -zcvf node-red-contrib-loop-processing.tar.gz node-red-contrib-loop-processing/
    1
    2
  • 二、在需要离线安装node-red指定节点的服务器操作
  1. 查找node_modules的位置,执行命令:find / -name node_modules
    4

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

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

  4. 关闭容器任务:docker stop 容器名

  5. 重启容器任务:docker start 容器名
    6

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

回到目录

相关文章:

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小基站

边缘计算社区获悉&#xff0c;近期深圳佳贤通信正式完成数亿元股权融资&#xff0c;本轮融资由美团龙珠领投。本轮融资资金主要用于技术研发、市场拓展等&#xff0c;将进一步巩固和扩大佳贤通信在5G小基站领域的技术及市场领先地位。 01 佳贤通信是什么样的公司&#xff1f; 深…...

【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扩展类。 我们的组件可以轻松地集成到您的应用程序中&#xff0c;并为您节省数百个开发和调试时间。 BCGControlBar专业版 v33.6已正式发布了&#xff0c;此版本包含了对图表组件的改进、带隐藏标签的单类功能区栏…...

云上攻防-云原生篇KubernetesK8s安全APIKubelet未授权访问容器执行

文章目录 K8S集群架构解释K8S集群攻击点-重点API Server未授权访问&kubelet未授权访问复现k8s集群环境搭建1、攻击8080端口&#xff1a;API Server未授权访问2、攻击6443端口&#xff1a;API Server未授权访问3、攻击10250端口&#xff1a;kubelet未授权访问 K8S集群架构解…...

Django 访问静态文件的APP staticfiles

Django 框架默认带的 APP&#xff1a; django.contrib.staticfiles Django文档中也写明了&#xff1a;如何管理静态文件&#xff08;如图片、JavaScript、CSS&#xff09; |姜戈 文档 |姜戈 (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打印机耗材更换的简单对比说明

速印机&#xff08;理想、荣大等&#xff09;、复印机&#xff08;夏普、理光、佳能、震旦等全系列&#xff09;、打印机、扫描仪、传真机、多媒体教学一体机、交互式电子白板、报警器材、监控、监考设备、特种安防设备维护及维修。吴中函 某用户的爱胜品YPS-1133DN Pro、爱胜品…...

“高级小程序开发指南“

目录 引言小程序视图层小程序逻辑层及生命周期总结 引言 随着移动互联网的快速发展&#xff0c;小程序作为一种轻量级的应用形态&#xff0c;在用户使用体验和开发者便捷性方面受到了广泛关注。本篇博客将带你深入探索小程序的视图层和逻辑层&#xff0c;并介绍其生命周期。 …...

分类算法-逻辑回归与二分类

1、逻辑回归的应用场景 广告点击率是否为垃圾邮件是否患病金融诈骗虚假账号 看到上面的例子&#xff0c;我们可以发现其中的特点&#xff0c;那就是都属于两个类别之间的判断。逻辑回归就是解决二分类问题的利器。 2、 逻辑回归的原理 2.1 输入 逻辑回归的输入就是一个线性…...

金融液冷数据中心,噱头还是趋势?

当前&#xff0c;全社会数字化进程加速&#xff0c;金融行业已全面进入数字化和智能化时代。与此同时&#xff0c;随着云计算、分布式架构、大数据分析、通用人工智能等技术的广泛运用&#xff0c;金融行业从数据大集中到分布式融合&#xff0c;金融企业的数据中心建设正围绕其…...

LeetCode 高频题目分类列表

&#x1f4a1; LeetCode 高频面试题分类列表&#xff0c;总共24类&#xff0c;312道题目&#xff01; 图 133.克隆图 207.课程表 210.课程表 II 399.除法求值 547.省份数量 684.冗余连接 743.网络延迟时间 785.判断二分图 堆 215.数组中的第K个最大元素 295.数据流的中位数 26…...

为什么模方有时候置平之后再打开,置平的地方纹理就缺失了,显示为下图中反光的灰色?

答&#xff1a;一般置平后结构改动多的位置会用灰面填充纹理&#xff0c;可以联动PS或者空三映射进行纹理贴图。 模方是一款针对实景三维模型的冗余碎片、水面残缺、道路不平、标牌破损、纹理拉伸模糊等共性问题研发的实景三维模型修复编辑软件。模方4.0新增单体化建模模块&am…...

k8s基础 随笔

写个笔记&#xff0c;后面再完善 部署第一个应用 为什么先实战水平扩缩&#xff1f;因为这个最简单&#xff0c;首先来部署一个喜闻乐见的nginx kubectl create deployment web --imagenginx:1.14 --dry-run -o yaml > web.yaml --dry-run表示试运行&#xff0c;试一下看…...

c# 关于某管理业务系统对数据统计问题.

1.业务系统主要的就是功能的稳定,流畅性. 最近客户提出某统计功能数据加载到页面很慢.反映到运维工程师处,运维跟我说之后我(研发), 我看了看代码,有几处代码确实需要优化,统计功能调用了4次服务端,每一次客户端调用服务端的时候返回结果3S左右,有三次调用服务端,一共大约耗时…...

nginx 配置相关详解

目录 Nginx的优点 Nginx简介 Nginx的优点 可以高并发连接 内存消耗少 成本低廉 配置文件非常易懂 稳定性高 内置有健康的检查功能 支持Rewrite重写 支持热部署 Nginx与Apache的对比 Nginx多进程工作原理跟设计 Nginx是如何实现高性能的 事件驱动模型 多进程机制…...

解决spring项目中无法加载resources下文件

解决spring项目中无法加载resources下文件 问题发现问题解决步骤一&#xff1a;检查文件名步骤二&#xff1a;确保测试资源目录步骤三&#xff1a;检查文件路径是否正确 问题发现 在学习Spring过程中&#xff0c;TestContext框架试图检测一个默认的XML资源位置。如果您的类被命…...

【广州华锐互动】人体血管器官3D动态展示为医学生提供哪些便利?

人体血管器官3D动态展示是一种采用先进的计算机图形技术和立体成像技术&#xff0c;对人体内部结构和功能进行三维可视化的教学方法。这种教学方式以其独特的优势&#xff0c;正在改变传统的解剖学教学模式&#xff0c;为医学教育带来了革新。 首先&#xff0c;3D动态演示能够提…...

【QT开发笔记-基础篇】| 第四章 事件QEvent | 4.7 拖放事件

本节对应的视频讲解&#xff1a;B_站_链_接 【QT开发笔记-基础篇】 第4章 事件 4.7 拖动事件 本章要实现的整体效果如下&#xff1a; QEvent::DragEnter ​ 当拖动文件进入到窗口/控件中时&#xff0c;触发该事件&#xff0c;它对应的子类是 QDragEnterEvent QEvent::DragLe…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力

引言&#xff1a; 在人工智能快速发展的浪潮中&#xff0c;快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型&#xff08;LLM&#xff09;。该模型代表着该领域的重大突破&#xff0c;通过独特方式融合思考与非思考…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例&#xff0c;模拟20个网页的爬取&#xff0c;每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程&#xff1a;允许程序同时执行多个任务&#xff0c;提高IO密集型任务&#xff08;如网络请求&#xff09;的效率…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

回溯算法学习

一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化

缓存架构 代码结构 代码详情 功能点&#xff1a; 多级缓存&#xff0c;先查本地缓存&#xff0c;再查Redis&#xff0c;最后才查数据库热点数据重建逻辑使用分布式锁&#xff0c;二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...

wpf在image控件上快速显示内存图像

wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像&#xff08;比如分辨率3000*3000的图像&#xff09;的办法&#xff0c;尤其是想把内存中的裸数据&#xff08;只有图像的数据&#xff0c;不包…...

抽象类和接口(全)

一、抽象类 1.概念&#xff1a;如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象&#xff0c;这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法&#xff0c;包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中&#xff0c;⼀个类如果被 abs…...