Deploy Node-RED
Low-code flow editor for APIs, webhooks and IoT, with login and storage
Node-RED
Just deployed
/data
Deploy and Host Node-RED on Railway
Node-RED is an open-source, low-code programming tool for event-driven applications. You build flows in a browser editor by wiring together nodes for HTTP, MQTT, webhooks, schedules, databases and thousands of community add-ons, then deploy them with one click. It runs on Node.js and is an OpenJS Foundation project.
About Hosting Node-RED
Node-RED is one Node.js process that serves the flow editor and any HTTP endpoints your flows create. Hosting it means keeping that process running, storing its user directory (flows, encrypted credentials and installed nodes) on persistent storage, and putting a login in front of the editor, because anyone who can use the editor can run code on the server. This template runs the official nodered/node-red 5.0.9 image, pinned by digest, with a Railway volume at /data. A small settings file turns on the editor login from variables, and Node-RED refuses to start without a password. The admin password and the credential encryption key are generated when you deploy.
Common Use Cases
- Webhook and API glue: receive webhooks, reshape the data and call other services
- Home automation and IoT flows over MQTT, with dashboards and alerts
- Scheduled jobs and small integrations, such as polling an API and writing the results to a database or a chat channel
Dependencies for Node-RED Hosting
- The official
nodered/node-redDocker image (5.0.9) - A Railway volume mounted at
/data
Deployment Dependencies
- Node-RED Docker guide
- Securing Node-RED
- Node-RED settings file reference
- Node-RED 5.0.9 release
- Template settings repo
Implementation Details
- Open the service's public domain and sign in as
admin(theNODE_RED_ADMIN_USERvariable) with the password from the service'sNODE_RED_ADMIN_PASSWORDvariable. You can replace the password with your own, in plain text or as a bcrypt hash, and redeploy. - The editor and its admin API need that login. Endpoints you build with
http innodes are served on the same domain (for example/hello) and are public, so add your own checks where needed. - Flows, credentials and nodes installed from the palette manager are stored in
/dataand survive redeploys. - Keep
NODE_RED_CREDENTIAL_SECRETunchanged after the first deploy, or Node-RED can't decrypt the credentials saved in your flows. - At start-up, the service downloads its
settings.jsfrom aalfath/node-red-railway-template at a fixed commit and caches it on the volume. To change other settings, fork that repo and point the start command at your copy. RAILWAY_RUN_UID=0runs the container as root so Node-RED can write to the Railway volume.
Why Deploy Node-RED on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Node-RED on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Template Content
Node-RED
nodered/node-red:5.0.9