Available Versions
Select a version when creating your pod. If not specified, Node.js 22 is used.
Switching Version Later
You aren’t locked into the version you picked. On the pod’s detail page, the Node version picker in the pod info panel switches an existing pod to any supported major in place - your files, environment variables, domain and plan all stay as they are.- Dashboard
- API
Open the pod, choose a version next to Node version, and click Switch.
If your
package.json declares an engines.node your pod doesn’t meet, you don’t need to do this
by hand: Deploy Doctor spots it and offers the switch as
a one-click fix.What’s Included
Pre-installed utilities: curl, wget, vim, htop, unzip.
Directory Structure
- App Root:
/home/instapod/app - App Port: 3000 (your app must listen on this port)
- Environment:
NODE_ENV=productionis set by default
How the App Service Works
Your Node.js app runs as a systemd service calledapp. It:
- Runs
/usr/bin/node index.jsfrom/home/instapod/app - Starts automatically on boot
- Restarts on crash (
on-failurepolicy) - Logs to the system journal (viewable via the Logs tab or CLI)
- Runs as the
instapoduser
Deploying Your App
Upload and Reload
Example Express App
No Hot Reload
Node.js does not support hot reloading of code. Every code change requires a full process restart viapods reload. The restart takes about 1 second and causes a brief interruption.
Viewing Logs
Adding a Database
Database services require the Build plan or higher.
Use Cases
- Express / Fastify APIs
- Next.js applications (standalone mode)
- GraphQL servers
- Real-time apps with WebSockets
- Background workers and job queues