Early access is open. Migration assistance is included with every plan.

Node.js hosting

Deploy Express, Fastify, Hono, Koa or plain http servers as persistent processes on dedicated vCPU. Run queue workers and scheduled jobs alongside the web process, with managed PostgreSQL, MongoDB or Redis on the private network.

Build and run

9live detects Node.js automatically. You can override any default in 9live.toml, or add a Dockerfile and we'll use that instead.
Detected by
package.json with a start script
Build
npm ci && npm run build --if-present
Start
npm start
Dockerfile (optional)
FROM node:22-alpine
WORKDIR /app
ENV NODE_ENV=production
COPY package*.json ./
RUN npm ci --omit=dev
COPY . .
EXPOSE 3000
CMD ["node", "src/server.js"]

Recommendations

Settings that work well for Node.js on dedicated hardware.
  • Listen on the PORT environment variable. 9live sets it and routes traffic to it.
  • Define a worker process in 9live.toml to run BullMQ or similar on the same environment.
  • Expose a /healthz route so deploys switch traffic only once the app is ready.
  • Pin the Node.js version with the engines field in package.json or an .nvmrc file.
PlanPricevCPUMemoryNVMeDatabasesBackups
Launch$149/mo816 GB160 GB1Daily, kept 7 days
Grow$249/mo1232 GB320 GB2Daily, kept 14 days
Scale$349/mo1648 GB500 GB3, plus a read replicaHourly and daily, kept 30 days
CustomOn requestAs requiredUp to a full serverAs requiredAs requiredAs required

Questions

Do we need a Dockerfile to deploy Node.js?

No. 9live detects Node.js and builds it with a maintained buildpack. If your repository has a Dockerfile, we use it instead.

How are environment variables managed?

Set them per environment in the dashboard or with the CLI. They are encrypted at rest and injected at runtime. Connection strings for managed databases are added automatically.

What happens when a deploy fails?

If the build fails, or the new release fails its health check, the current release keeps serving traffic. You get a notification with the build or health-check logs.

Talk to an engineer about your setup

Tell us what you run today and where it runs. We reply within one business day with a recommended plan and an estimate for the migration.