To install Node-RED locally you will need a supported version of Node.js.
To install Node-RED you can use the
npm command that comes with node.js:
sudo npm install -g --unsafe-perm node-red
sudo. More information about installing Node-RED on Windows can be found here.
This command will install Node-RED as a global module along with its dependencies.
You can confirm it has succeeded if the end of the command output looks similar to:
+ [email protected] added 332 packages from 341 contributors in 18.494s found 0 vulnerabilities
To run in Docker in its simplest form just run:
docker run -it -p 1880:1880 --name mynodered nodered/node-red
For more detailed information see our docker guide.
If your OS supports Snap you can install Node-RED with:
sudo snap install node-red
When installed as a Snap package, it will run in a secure container that does not have access to some extra facilities that may be needed for you to use, such as:
gcc- needed to compile any binary components of nodes you want to install
git- needed if you want to use the Projects feature
You can run it in “classic” mode which reduces the container security but then does provide wider access.
Once installed as a global module you can use the
node-red command to start
Node-RED in your terminal. You can use
Ctrl-C or close the terminal window
to stop Node-RED.
$ node-red Welcome to Node-RED =================== 30 Jun 23:43:39 - [info] Node-RED version: v1.1.0 30 Jun 23:43:39 - [info] Node.js version: v10.21.0 30 Jun 23:43:39 - [info] Darwin 18.7.0 x64 LE 30 Jun 23:43:39 - [info] Loading palette nodes 30 Jun 23:43:44 - [warn] rpi-gpio : Raspberry Pi specific node set inactive 30 Jun 23:43:44 - [info] Settings file : /Users/nol/.node-red/settings.js 30 Jun 23:43:44 - [info] HTTP Static : /Users/nol/node-red/web 30 Jun 23:43:44 - [info] Context store : 'default' [module=localfilesystem] 30 Jun 23:43:44 - [info] User directory : /Users/nol/.node-red 30 Jun 23:43:44 - [warn] Projects disabled : set editorTheme.projects.enabled=true to enable 30 Jun 23:43:44 - [info] Creating new flows file : flows_noltop.json 30 Jun 23:43:44 - [info] Starting flows 30 Jun 23:43:44 - [info] Started flows 30 Jun 23:43:44 - [info] Server now running at http://127.0.0.1:1880/red/
You can then access the Node-RED editor by pointing your browser at http://localhost:1880.
The log output provides you various pieces of information:
flows_<hostname>.json as the default flows file. You can change
this by providing the flow file name as argument to the
Node-RED can be started using the command
node-red. This command can take
node-red [-v] [-?] [--settings settings.js] [--userDir DIR] [--port PORT] [--title TITLE] [--safe] [flows.json|projectName] [-D X=Y|@file]
||Sets the TCP port the runtime listens on. Default:
||Starts Node-RED without starting the flows. This allows you to open the flows in the editor and make changes without the flows running. When you deploy your changes, the flows are then started.|
||Sets the settings file to use. Default:
||Set process window title|
||Sets the user directory to use. Default:
||Enables verbose output|
||Override individual settings|
||Shows command-line usage help and exits|
||If the Projects feature is not enabled, this sets the flow file you want to work with. If the Projects feature is enabled, this identifies which project should be started.|
flows_<hostname>.json as the default flows file. If the computer
you are running on may change its hostname, then you should ensure you provide a
static file name; either as a command-line argument or using the
in your settings file.
Since Node-RED 1.1.0
You can override individual settings on the command-line using the
For example, to change the logging level you can use:
You can also provide the custom settings as a file:
The file should contain a list of the settings to override:
There are occasions when it is necessary to pass arguments to the underlying Node.js process. For example, when running on devices like the Raspberry Pi or BeagleBone Black that have a constrained amount of memory.
To do this, you must use the
node-red-pi start script in place of
Note: this script is not available on Windows.
Alternatively, if are running Node-RED using the
node command, you must provide
arguments for the node process before specifying
red.js and the arguments you
want passed to Node-RED itself.
The following two commands show these two approaches:
node-red-pi --max-old-space-size=128 --userDir /home/user/node-red-data/ node --max-old-space-size=128 red.js --userDir /home/user/node-red-data/
If you have installed Node-RED as a global npm package, you can upgrade to the latest version with the following command:
sudo npm install -g --unsafe-perm node-red