Skip to main content
The Rails guides take a Rails 8.1 application from rails new to a running Sevalla application, which Ingot builds from your repository with no build configuration, then add one capability each. Start with the deploy guide: the others build on the application it creates.

Deploy Rails

Puma, a PostgreSQL database, db:prepare in a job, and an optional Dockerfile.

Background jobs

Run Active Job with Solid Queue in a background worker or inside Puma, with recurring tasks.

Object storage

Store Active Storage uploads in a bucket, with direct uploads and image variants.

Caching

Cache with Solid Cache in PostgreSQL, or in a Redis or Valkey database.

How the guides fit together

The deploy guide creates storefront, a Rails application with a Product resource, and deploys it as one Sevalla application with:
  • a web process that runs Puma with bin/rails server,
  • a job named Migrate that runs bin/rails db:prepare before each deployment,
  • a Sevalla PostgreSQL database, reached over an internal connection as DATABASE_URL.
Rails 8 keeps its cache, its job queue and Action Cable’s messages in their own databases by default. The deploy guide puts their tables in the application’s one database instead, so the other guides need no new PostgreSQL database: Solid Queue and Solid Cache already have their tables when you start them. Each of the other guides adds to that application: Every guide works with both build strategies: Ingot, the default, and the Dockerfile from Deploy with a Dockerfile. For how Ruby applications build and run on Sevalla in general, see Deploy Ruby applications.