Skip to main content
Node.js & Next.js

Node.js and Next.js, deployed the moment you push

Connect a repo, push your code, and we build it into an isolated container and put it live. Next.js, Nuxt, Express, Fastify, NestJS - auto-detected, health-checked, and rolled back in one click when you need it.

14 days free. No credit card. No commitment.

Push to deploy

GitHub, GitLab, Bitbucket

Same price

On renewal, every year

99.99%

Uptime, last 12 mo

Daily

Backups kept up to 30 days

E

190+

Tasks Ellie handles

What you get

A real deployment pipeline, built in

Not a script you maintain. Connect a repository once and every push flows through the same build, health-check, and promote pipeline.

Git push deploys

Connect GitHub, GitLab, or Bitbucket over OAuth or a token. A push to your branch registers a webhook and triggers a build automatically.

Framework detection

We read your package.json and lockfile to pick the framework, package manager, install and build commands, and start command. Override any of them.

Isolated containers

Each SSR app runs in its own Podman container as a managed service with its own CPU and memory. No shared runtime, no noisy neighbors.

Blue/green deploys

A new build starts on a fresh port and only takes over traffic after a TCP health check passes. If it never comes up, we keep the old one serving.

One-click rollback

Every successful build is kept as an artifact. Promote a previous build back to live in seconds - no rebuild, no Git revert.

Live logs

Stream application output and platform events (restarts, exit codes, OOM) straight from the panel. No SSH required to see what happened.

Env vars & secrets

Set build-time and runtime variables in the panel. Mark any as a secret and the value is sealed - write-only, never shown again.

Instant activation

The freshly built image stays loaded on the worker, so promoting a build flips traffic almost instantly instead of pulling from storage.

How it works

Push. Build. Live.

Three Git providers, one pipeline. Choose how much automation you want - from ship-on-every-push to build-and-hold-for-approval.

1

Connect your repository

Link GitHub, GitLab, or Bitbucket via OAuth or a personal token. Pick the repo and the branch to track. A push webhook is registered for you.

2

We detect and build

On each push we clone the commit, detect your framework and package manager, run install and build in a resource-capped build container, and package the result as a versioned image.

3

Health-check and promote

The container has to answer on its port within 30 seconds before it goes live. On Auto deploy it promotes itself; on Build only it waits for you to promote from the Deployments tab.

Build #v17

Current
Repositorynextjs / main
FrameworkNext.js
Node.js22
ModeAuto deploy

Build log

Cloned commit 438555a

Detected Next.js · pnpm

Dependencies installed

Build completed

Health check passed · promoted

Auto deploy
Build only
Paused

The pipeline

What happens between push and live

Five stages, every time, with the previous build kept the whole way through.

  1. Push

    A commit lands on the tracked branch.

  2. Detect

    We read package.json and pick the framework, package manager, and commands.

  3. Build

    Install and build run in a resource-capped container. The result is a versioned image.

  4. Health check

    The new container must answer on its port within 30 seconds.

  5. Live

    It takes over traffic. The previous build stays, one click away.

Runs your Node stack as-is

Next.jsNuxtExpressFastifyNestJSHonoKoaAny Node server

Detected from your package.json. npm, pnpm, yarn, and bun are all recognized from your lockfile.

Runtime

Your app runs in a real container, not a shared pool

Every SSR app is a managed service with its own resources, automatic restarts, and a live view of its health.

  • Managed as a service

    Each container runs as its own system service. If it crashes, it restarts automatically within seconds - no manual babysitting.

  • Dedicated resources

    CPU and memory are allocated per container and bounded to your account, so one busy app cannot starve the rest.

  • Restart without redeploy

    Bounce a container from the panel to clear a stuck process, keeping the exact same build. No rebuild, no downtime window to schedule.

  • Talks to MySQL out of the box

    Your database host is injected into the container. Connect over TCP with the credentials you already manage in the panel.

Next.js

Full Next.js, not a trimmed-down subset

Server components, API routes, ISR, middleware, and static export all work. We read your next.config and deploy the right way.

SSR & server components

A standard or standalone build runs as a live container, so server-side rendering, server components, and API routes work exactly as they do locally.

Static export to the edge

output: "export" is detected and the static build is served from our edge cache instead of a container - fast, and it doesn’t use an app slot.

ISR & revalidation

Incremental Static Regeneration keeps working because your app runs as a real Node process, not a stripped serverless shim.

This site runs on it

hostney.com itself is a Next.js app deployed on Hostney the same way your app would be - connected to GitHub, built into a container, and promoted on every push to its branch.

See the developer tooling

Bot detection covers your app, not just WordPress

Every request to your Node container passes through the same behavioral bot detection that protects the rest of the platform - scored in real time, no plugin, no setup. Your app just sees clean traffic.

See how bot detection works

Pricing

Simple, transparent pricing

Every plan includes managed WordPress, SSH access, daily backups, and enterprise-grade security. Start with a 14-day free trial.

Startup

Great for growing businesses

$7.99/mo

$94.99 billed annually

  • 1 website
  • 10 GB storage
  • ~10,000 visits/month
  • 5 MySQL databases
  • 250,000 inodes
  • 5 FTP users

What's included:

SSL & Domain

  • Free SSL certificate
  • Free starter domain

Apps & CMS

  • 1-click WordPress
  • Managed WordPress
  • WordPress staging
Most popular

Advanced

For professional websites

$14.99/mo

$179.99 billed annually

  • 5 websites
  • 20 GB storage
  • ~110,000 visits/month
  • 10 MySQL databases
  • 500,000 inodes
  • 10 FTP users

Everything in Startup, plus:

Backups

  • 14 days of backup history

Performance

  • Memcached object cache
  • Redis object cache

Monitoring

  • 5 minutes between checks

Pro

Maximum performance and features

$22.99/mo

$274.99 billed annually

  • 10 websites
  • 40 GB storage
  • ~200,000 visits/month
  • 20 MySQL databases
  • 750,000 inodes
  • 20 FTP users

Everything in Advanced, plus:

Deployment

  • 2 SSR applications

Backups

  • 30 days of backup history

Monitoring

  • 1 minute between checks

Ship it

Deploy your Node.js app in minutes

Connect a repo, push, and watch it go live. Git deployment, containers, rollback, and logs are included in every plan. Start free for 14 days, no credit card.

Questions

Frequently asked questions

Which Node.js frameworks are supported?
Next.js and Nuxt run as container-backed SSR apps. Generic Node.js servers - Express, Fastify, NestJS, Hono, and anything else that listens on a port - run under the Node.js preset. When you connect a repo, we detect the framework from your package.json and configure the build and start commands for you. You can override any of them.
Which Node.js version can I run?
Node.js 24, 22, or 20. We recommend 22. Set it explicitly in the build settings, or let us read it from your .nvmrc, .node-version, or the engines field in package.json.
Does it use npm, or can I use pnpm, yarn, or bun?
All four. We detect your package manager from the lockfile (package-lock.json, pnpm-lock.yaml, yarn.lock, or bun.lockb) and run the matching install and build commands automatically.
How does Next.js get deployed - static or a running server?
Both, depending on your next.config. If you export a static site (output: "export"), the build is served from our edge cache. A standard or standalone Next.js app runs as a live Node container so SSR, API routes, and ISR all work. We read your config and pick the right path.
What port does my app need to listen on?
Bind your server to 0.0.0.0 on the port we provide via the PORT environment variable (default 3000 for Node). Listening on localhost or a hardcoded port is the most common reason a build succeeds but the app will not start. Everything else - the public domain, HTTPS, and routing - is handled for you.
How do rollbacks work?
Every successful build is stored as an artifact. Promoting a previous build swaps it back in as the live version in seconds - no Git revert, no rebuild. We keep your five most recent successful container builds per app; the one currently live is always protected.
How are secrets and environment variables handled?
Add environment variables in the panel for both build and runtime. Mark any of them as a secret and the value is sealed - it is never shown in the UI or API again, though your app still receives it at runtime. Rotate a secret by entering a new value.
Is this included in my plan?
Yes. Git deployment, container hosting, build history, rollback, live logs, and environment management are part of every Hostney plan. Node.js SSR apps run in a container that counts against your plan’s app allowance.