Adios
Apps and APIs · plans from $10/month

Deploy Ruby.Run the framework's production process.

Install the locked gems, start Puma or the process your framework expects, verify the health route, and keep runtime configuration out of source.

Keep the repositoryInspect build and logsCustom domains and TLS
Adios deploy

Candidate release

Ruby

Healthy

SOURCE

Git

REGION

de

ROUTE

HTTPS

01Source received

02Build completed

03Runtime started

04Health check passed

Promoted route

production.adios.run

A production path for

RubyRailsSinatraPumaBundlerRack

The production path

A working Ruby project still needs a safe release.

The application or service is only one part of production. Build evidence, runtime state, health, secrets, logs, routes, and the promoted version should remain inspectable together.

Keep the Ruby build you already use

Install from Gemfile.lock and preserve the Rack or framework entrypoint already used by the project. Build-time preparation remains visible in adios.yaml.

Promote the version that reports healthy

Use Puma or another production server, bind to the declared port, and check the app's readiness before the release is routed to users.

Trace production back to source

Build output, runtime logs, health state, secrets, domains, and the promoted release stay attached to the project instead of being split across unrelated tools.

From source to release

Three steps keep the deployment path reviewable.

Use the source and production behavior the project already has. The manifest records what the platform should build or provision and how the result becomes ready.

  1. 01

    Start with source or a template

    Bring the existing repository, or inspect and deploy one of the exact starter variants linked below.

    $adios login
  2. 02

    Review the deployment contract

    Keep commands, runtime or service version, health behavior, and secret references in adios.yaml.

    $git diff -- adios.yaml
  3. 03

    Deploy and inspect the result

    Follow build and runtime evidence, verify the candidate, and open the promoted route or service connection.

    $adios up
adios.yaml
Your project
name: ruby-app
build_cmd: bundle install
start_cmd: bundle exec puma -C config/puma.rb

runtime:
  name: ruby@3.2
  port: 8080
  health_path: /healthz
Use the start command and Ruby version required by your framework and Gemfile.lock.

Deployable starting points

Start Ruby from a template when the repository is not ready.

Start from Rails, Sinatra, or Hanami source with Bundler commands and Adios configuration already included.

API starters

Ruby on Rails

Rails, Sinatra, Grape, Hanami, and Roda starters with Bundler and Adios config.

RubyBundler
Template key
ruby-rails
Runtime
ruby
Repository
templates
Source path
ruby/rails
git clone https://github.com/adiosdotdev/templates.git
cd templates/ruby/rails
adios up

API starters

Ruby Sinatra

Rails, Sinatra, Grape, Hanami, and Roda starters with Bundler and Adios config.

RubyBundler
Template key
ruby-sinatra
Runtime
ruby
Repository
templates
Source path
ruby/sinatra
git clone https://github.com/adiosdotdev/templates.git
cd templates/ruby/sinatra
adios up

API starters

Ruby Grape

Rails, Sinatra, Grape, Hanami, and Roda starters with Bundler and Adios config.

RubyBundler
Template key
ruby-grape
Runtime
ruby
Repository
templates
Source path
ruby/grape
git clone https://github.com/adiosdotdev/templates.git
cd templates/ruby/grape
adios up

API starters

Ruby Hanami Router

Rails, Sinatra, Grape, Hanami, and Roda starters with Bundler and Adios config.

RubyBundler
Template key
ruby-hanami
Runtime
ruby
Repository
templates
Source path
ruby/hanami
git clone https://github.com/adiosdotdev/templates.git
cd templates/ruby/hanami
adios up

API starters

Ruby Roda

Rails, Sinatra, Grape, Hanami, and Roda starters with Bundler and Adios config.

RubyBundler
Template key
ruby-roda
Runtime
ruby
Repository
templates
Source path
ruby/roda
git clone https://github.com/adiosdotdev/templates.git
cd templates/ruby/roda
adios up

Before production

Verify the workload.Then promote it.

The safest first release starts with a reproducible build or service configuration and a preview that exercises the dependencies production will actually use.

Ready when…

  • bundle install succeeds from the committed lockfile.
  • The production server binds to the manifest port.
  • The app has a lightweight health route.
  • Credentials and secret keys are injected at runtime.

Preview when…

  • A gem compiles native extensions.
  • Asset compilation or database migrations change the release path.
  • Background jobs require Redis or another queue.

Questions, answered

What to know before deploying Ruby.

Review the runtime or service boundary, template path, failure behavior, and production checks before creating the first release.

Can Adios deploy an existing Ruby project?

Yes. Run the Adios CLI from the project root, keep the repository and dependency files you already use, and add an adios.yaml file that describes the production build, start command, port, and health path.

Do I need Docker to deploy Ruby?

Not for a standard supported runtime. Use the project's normal production commands in adios.yaml. If the build needs unusual operating-system packages or native libraries, verify those dependencies in a preview before promotion.

Can I deploy Rails and non-Rails Ruby apps?

Yes. The template catalog includes Rails, Sinatra, Grape, Hanami Router, and Roda. Other Rack-compatible apps can define their own build and production start commands.

How should Ruby background jobs run?

Run a persistent worker process with its own command and secret-backed queue connection. Test retries, shutdown, and duplicate-job behavior separately from web request handling.

What happens when the build or health check fails?

The candidate release keeps its build and runtime output for inspection. It must report healthy before it becomes the promoted version serving the application route.

Can I start from a template instead of an existing repo?

Yes. This page links to the closest official Adios Ruby starters. Inspect the exact source variant, deploy it in the console, or clone it locally and run adios up.

The first release

Deploy Ruby with the source and evidence attached.

Start from the repository or a template, review the deployment contract, and inspect what becomes the promoted production version.