【linux】docker下homeassistant和nodered安装及配置

1、homeassistant安装

从 Docker Hub 上拉取 Home Assistant 的镜像文件

docker pull homeassistant/home-assistant

是运行 Home Assistant 容器

docker run -id --name="homeassistant" --privileged --restart always -p 8123:8123 -e TZ=Aisa/Shanghai --net=host -v /volume2/docker/hass:/config homeassistant/home-assistant

其中,-id 表示以交互方式运行容器并在后台运行;

--name 指定容器的名称;

--privileged 允许容器访问宿主机的所有设备;

--restart always 表示容器在崩溃或重启后始终自动重启;

-p 8123:8123 表示将容器内的 8123 端口映射到宿主机的 8123 端口;

-e TZ=Aisa/Shanghai 指定时区为亚洲/上海;

--net=host 表示使用主机网络模式;

-v /volume2/docker/hass:/config 将宿主机上的 /volume2/docker/hass 目录挂载到容器内的 /config 目录,用于存储配置文件和数据。

2、nodered安装

从 Docker Hub 上拉取 Node-RED 的镜像文件

docker pull nodered/node-red

在 Docker 中运行 Node-RED 容器

docker run -it -e TZ="Asia/Shanghai" -p 1880:1880 -v node_red_data:/data --name mynodered nodered/node-red

  • docker run 是用于创建并运行容器的命令。
  • -it 参数表示要以交互模式运行容器,并将终端连接到容器的标准输入和输出。
  • -e TZ="Asia/Shanghai" 参数用于设置容器的时区。在这个例子中,时区被设置为 "Asia/Shanghai"。
  • -p 1880:1880 参数用于将主机的 1880 端口映射到容器的 1880 端口。这样,当你访问主机的 1880 端口时,实际上是连接到容器中运行的 Node-RED 服务器。
  • -v node_red_data:/data 参数用于将主机上的 node_red_data 卷挂载到容器内的 /data 目录。这样可以持久化存储容器中的数据。如果该卷不存在,Docker 会自动创建它。
  • --name mynodered 参数用于给容器指定一个名称,即 mynodered
  • nodered/node-red 是要运行的容器镜像的名称。

如果页面迟迟没有弹出,请重启服务器,当你关闭 Node-RED 服务器后,你可以再次启动它而不需要删除先前运行的容器。只需使用以下命令重新启动容器即可并运行下面命令

docker start mynodered

3、homeassistant与nodered关联

要将 Node-RED 与 Home Assistant 集成

3.1、首先获取homeassistant的长久秘钥:

HASS中的我的-创建长期令牌

3.2、homeassistant添加HACS商店

续写

HomeAssistant添加HACS商店_homeassistant安装hacs-CSDN博客

(一)NanoPi m4v2 安装 Home Assistant(含 supervisor)_home assistant supervisor-CSDN博客

3.3、对nodered的容器进行npm换源

首先,你可以通过以下命令列出当前正在运行的容器及其相关信息:

docker ps

进入nodered容器

docker exec -it mynodered /bin/bash

切换npm数据源

npm config set registry https://registry.npmmirror.com

然后在 Node-RED 中添加 Home Assistant :

  1. 打开 Node-RED 编辑器。

  2. 在右上角的菜单中,选择 "Manage palette"。

  3. 在 "Palette" 标签下,点击 "Install"。

  4. 在搜索栏中输入 "node-red-contrib-home-assistant-websocket"。

  5. 在结果列表中,找到 "node-red-contrib-home-assistant-websocket" 插件,并点击 "Install" 进行安装。

  6. 安装完成后,关闭 "Manage palette" 窗口。

  7. 在编辑器界面中,你现在应该能看到 Home Assistant 相关的节点选项。

  8. 将 Home Assistant 节点拖动到编辑区域。

  9. 双击 Home Assistant 节点以配置它。

  10. 在配置窗口中,输入 Home Assistant 实例的 URL、API 密钥和其他必要的参数。确保提供正确的信息以连接到你的 Home Assistant 实例。

  11. 点击 "Done" 完成配置。

  12. 现在,你可以使用 Home Assistant 节点来与你的 Home Assistant 实例进行通信和控制。

通过 Home Assistant 节点,你可以访问 Home Assistant 中的设备、实体和服务,并在 Node-RED 中进行自动化和处理逻辑。你可以使用 Home Assistant 节点发送命令、获取状态和订阅事件等操作。

相关推荐
xlsw_1 小时前
java全栈day20--Web后端实战(Mybatis基础2)
java·开发语言·mybatis
神仙别闹2 小时前
基于java的改良版超级玛丽小游戏
java
鸠摩智首席音效师2 小时前
Docker 中如何限制CPU和内存的使用 ?
docker·容器
Michaelwubo2 小时前
Docker dockerfile镜像编码 centos7
运维·docker·容器
远游客07132 小时前
centos stream 8下载安装遇到的坑
linux·服务器·centos
马甲是掉不了一点的<.<2 小时前
本地电脑使用命令行上传文件至远程服务器
linux·scp·cmd·远程文件上传
jingyu飞鸟2 小时前
centos-stream9系统安装docker
linux·docker·centos
黄油饼卷咖喱鸡就味增汤拌孜然羊肉炒饭2 小时前
SpringBoot如何实现缓存预热?
java·spring boot·spring·缓存·程序员
好像是个likun2 小时前
使用docker拉取镜像很慢或者总是超时的问题
运维·docker·容器
暮湫2 小时前
泛型(2)
java