NodeRed
NodeRed is a flexible visual programming tool mainly for managing IoT services. I don't use it for that at all, I use it to run my telegram bot!
Installation is easy if you do it in docker/portainer. Here's my portainer stack
version: "2"
services:
nodereddb:
image: linuxserver/mariadb:latest
container_name: NodeRedDB
volumes:
- ~/mariadb:/config:rw # set the bit before the : to your persistent storage location
- ~/mariadb:/var/lib/mysql:rw # I can't tell which of these is needed nowadays
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: password # Replace this with one of your own!
nodered:
image: nodered/node-red:latest
container_name: mynodered
volumes:
- "~/NodeRed:/data" # set the bit before the : to your persistent storage location
environment:
- "TZ=Europe/London"
ports:
- 1880:1880
restart: unless-stopped
That's all you need in the stack editor. Deploy the stack.
Then go to <IP of the machine that is running docker/portainer>:1880
I don't expose this container/port to the internet, so I haven't bothered setting up a CNAME or an entry in the Caddyfile for this service. If you choose to do those things then read up carefully about hardening NodeRed - it's not at all secure out of the box!