Actualizaciones:
- 2023-03-02: Revisión del documento y corrección de errores.
Introducción
Node-RED es una herramienta de programación para conectar dispositivos de hardware, API y servicios en línea de formas nuevas e interesantes.
Proporciona un editor basado en navegador que facilita la conexión de flujos mediante la amplia gama de nodos de la paleta que se pueden ejecutar con un solo clic.
Instalación
La instalación en Docker se realiza usando la imagen nodered/node-red
.
La forma más sencilla es usar un fichero docker-compose.yml
con el siguiente contenido:
version: "3"
services:
node-red:
image: nodered/node-red:latest
container_name: node-red
environment:
- TZ=Europe/Madrid
volumes:
- /home/pi/volumes/node-red:/data
ports:
- 1880:1880
restart: unless-stopped
Se puede usar docker-compose up -d
o usar el contenido del fichero en Portainer.
Configuración
Una vez en marcha, se puede acceder a Node-RED a través del puerto 1880
(en este ejemplo http://192.168.1.180:1880) y comenzar la configuración.
Una opción recomendable, además de utilizar HTTPS, es utilizar la autenticación de usuarios.
Para ello hay que descomentar esta sección del fichero settings.js
para disponer de un usuario admin
con todos los privilegios:
adminAuth: {
type: "credentials",
users: [{
username: "admin",
password: "$2a$08$zZWtXTja0fB1pzD4sHCMyOCMYz2Z6dNbM6tl8sJogENOMcxWV9DN.",
permissions: "*"
}]
},
Para generar la contraseña de este usuario hay que utilizar la herramienta node-red
de la siguiente manera::
pi@pi4nas:~ $ docker exec -it node-red node-red admin hash-pw
Password:
$2a$08$zZWtXTja0fB1pzD4sHCMyOCMYz2Z6dNbM6tl8sJogENOMcxWV9DN.
A continuación se reinicia el contenedor para utilizar la nueva configuración.
Actualizar
Si ya se había instalado Node-RED anteriormente, se puede actualizar de la siguiente manera:
docker stop node-red
docker rm node-red
docker rmi nodered/node-red
docker-compose up -d
Soporte
Algunos comandos para gestionar la configuración del contenedor:
# Acceder al shell mientras el contenedor está ejecutándose
docker exec -it node-red /bin/bash
# Monitorizar los logs del contenedor en tiempo real
docker logs -f node-red
Referencias
- Instalar Home Assistant y Node-RED con Docker @ Un loco y su tecnología
- HA y Node-RED: Configuración rápida @ Un loco y su tecnología