Framework Deploy

Deploy Ruby on Rails apps on your own VPS

Last updated June 15, 2026
Reviewed by Better-PaaS team

Deploy Ruby on Rails applications from Git with Better-PaaS, Nixpacks, Docker containers, automatic HTTPS, logs, and rollback support.

Overview

Better-PaaS can deploy Ruby on Rails projects from a Git repository or Docker image. The platform builds the app, runs it in a container, routes traffic through Caddy, and gives you logs, env vars, domains, databases, and rollbacks from the dashboard.

What Better-PaaS expects

Ruby on Rails projects should have a clear build and start path. For this stack, the common shape is Ruby web applications with database migrations. If Nixpacks does not detect the project correctly, use explicit build/start commands or a Dockerfile.

Deployment steps

Connect the repository, choose the branch, set environment variables, attach any database, deploy, then verify the app responds on the platform-provided port. Better-PaaS will handle container lifecycle and HTTPS routing after the app is healthy.

  • Connect Git repository
  • Set build and runtime variables
  • Add Postgres, Redis, or MySQL if needed
  • Deploy and inspect logs
  • Add domain and verify HTTPS

Common mistakes

The most common issue is hard-coding a port instead of listening on the provided PORT variable. Build failures usually come from missing lockfiles, missing scripts, or framework detection that needs a custom Dockerfile.

Rails on Docker/Nixpacks

Run rails db:migrate in release phase or manually after first deploy. Asset precompilation needs SECRET_KEY_BASE set.

  • Add Postgres add-on before first migrate
  • Set RAILS_ENV=production and SECRET_KEY_BASE
  • Use bundle exec puma as start command if auto-detection fails

FAQ

Can Better-PaaS deploy Ruby on Rails from Git?

Yes, when the repository can be built by Nixpacks or by a Dockerfile you provide.

Can Ruby on Rails apps use databases?

Yes. Better-PaaS can provision Postgres, Redis, and MySQL containers and inject connection variables into apps.