Skip to content
Node RED multi-instance manager
Branch: master
Clone or download
Latest commit c8d3c78 Feb 15, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
api fix network list Feb 15, 2019
client added node admin client Feb 15, 2019
config refactor Feb 14, 2019
data keep dir struct Apr 4, 2017
docker fix network list Feb 15, 2019
model
service
storage added go.mod Feb 10, 2019
test
.gitignore refactor Feb 14, 2019
Dockerfile
LICENSE update readme Feb 13, 2017
Makefile
README.md added docs Feb 11, 2019
config.example.yml added test, review image load logic, ensure network is avail. fix #9 Feb 10, 2019
docker-compose.yml refactor Feb 14, 2019
go.mod
go.sum
main.go

README.md

redzilla

redzilla manage multiple instances of node-red

Usage

Start the service with docker-compose, by default it will run on port 3000

docker-compose up -d

Create a new instance named hello-world

curl -X POST http://redzilla.localhost:3000/v2/instances/hello-world

Open in the browser

xdg-open http://hello-world.redzilla.localhost:3000/

Done!

Using custom images

ImageName option allow to use local or remote custom images. Example:

  • ImageName: docker.io/nodered/node-red-docker:latest Use the latest online version
  • ImageName: mycustom/nodered:latest Use the mycustom/nodered local image

Configuration

See config.example.yml for configuration options.

Environment variables

  • REDZILLA_NETWORK (default: redzilla) set the network where node-red instances will run
  • REDZILLA_APIPORT (default: :3000) changes the API host:port to listen for
  • REDZILLA_DOMAIN (default: redzilla.localhost) set the base domain to listen for
  • REDZILLA_IMAGENAME (default: nodered/node-red-docker) changes the node-red image to be spawn (must be somehow compatible to the official one)
  • REDZILLA_STOREPATH (default: ./data/store) file store for the container runtime metadata
  • REDZILLA_INSTANCEDATAPATH (default: ./data/instances) container instaces data (like setting.js and flows.json)
  • REDZILLA_LOGLEVEL (default: info) log level detail
  • REDZILLA_AUTOSTART (default: false) allow to create a new instance when reaching an activable subdomain
  • REDZILLA_ENVPREFIX (empty by default) filter environment variables by prefix and pass to the created instance. Empty means no ENV are passed. The ${PREFIX}_ string will be removed from the variable name before passing to the instance. Example NODERED will match NODERED_, RED will match REDZILLA_ and RED_
  • REDZILLA_CONFIG load a configuration file (see config.example.yml for reference)

API

List instances

curl -X GET http://redzilla.localhost:3000/v2/instances

Create or start an instance

curl -X POST http://redzilla.localhost:3000/v2/instances/instance-name

Restart an instance (stop + start)

curl -X POST http://redzilla.localhost:3000/v2/instances/instance-name

Stop an instance

curl -X DELETE http://redzilla.localhost:3000/v2/instances/instance-name

Prerequisites

To run redzilla you need docker and docker-compose installed.

License

The MIT license. See LICENSE file for details

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.