Ruby on Rails logo
Developer Stacks

Ruby on Rails Hosting on Your Own VPS

Rails behind Puma with Sidekiq and PostgreSQL, on a server with enough memory to matter.

Size a server for Ruby on Rails

Every stop is a real configuration you can deploy. Priced per 30 days, billed by the hour, exclusive of 18% GST.

4 vCPU
8 GB
40 GB
5 TB

What Ruby on Rails is

Ruby on Rails runs as a long-running application server, typically Puma, with NGINX in front for TLS and static assets and PostgreSQL behind. The pattern resembles Django's, but the resource profile does not.

Rails is memory-hungry, and this is the single most common way Rails hosting is got wrong. Each Puma worker is a full copy of the application in memory — commonly 200 to 400 MB for a real application, more with many gems. Four workers is well over a gigabyte before the database or Redis has anything, and undersizing shows up as the OOM killer terminating workers under load rather than as a gradual slowdown.

Background jobs usually mean Sidekiq, which is another process holding another copy of the application. Budget for it explicitly rather than discovering it. Asset precompilation during deploy is also memory-hungry, and is a step that fails on small servers even when steady-state use would have fit.

Why run Ruby on Rails on a VPS

Memory sized for Puma workers rather than for a PHP script — the actual Rails constraint.

Sidekiq under a supervisor, restarted on failure and on deploy.

Root access for native gem extensions that need system libraries.

PostgreSQL locally, which is the Rails default for good reasons.

Ruby on Rails features

Puma behind NGINX with TLS

PostgreSQL with direct access

Sidekiq with Redis for background jobs

Asset pipeline or jsbundling, precompiled at deploy

rbenv or rvm for Ruby version management

Credentials and environment handled outside the repository

Recommended server

A starting point for Ruby on Rails, not a hard floor — size it on the sliders.

Memory8 GB. Each Puma worker holds a full copy of the app — this is not the place to economise
CPU4 vCPU; worker count tracks cores
Storage40 GB, more with significant uploads
Operating systemUbuntu 22.04 LTS

How deployment works

Rails is deployed with Puma behind NGINX, PostgreSQL locally, and Sidekiq under a supervisor if the application uses it. Ruby is managed with rbenv so the version is pinned. Size memory before deploying rather than after: asset precompilation is memory-hungry and is where undersized servers fail first, before the application has served a single request.

It is your server. Ruby on Rails is installed directly on your VPS or VDS, not inside a container we manage. You get root over SSH, you can install anything alongside it, change its configuration, or remove it entirely. We do not hold a key to it.

What people run it for

Rails applications

Standard deployments with migrations, assets and background jobs.

APIs

Rails in API mode with worker counts you control.

Background-heavy work

Sidekiq queues for mail, imports and integrations.

Moving off a PaaS

The same stack at server prices rather than per-dyno pricing.

Ruby on Rails hosting questions

A VPS running Rails behind Puma with NGINX, PostgreSQL and optionally Sidekiq, with root access throughout.

Deploy Ruby on Rails on your own server

Root access, your choice of size, and no container between you and the application.