Ruby

Se detecta por un Gemfile. Bundler instala las gems sin los grupos development y test.

Guías de despliegue paso a paso: Ruby, Ruby on Rails.

Consulta Buildpackspara ver cómo funcionan la detección y la política de versiones. Si el proyecto también tiene package.json, recibe Node.jsen la misma build (Rails con un pipeline de JS).

Detección

Gemfile en el directorio base.

Versiones

La versión por defecto es Ruby 3.4. Ramas publicadas a septiembre de 2026: 3.3, 3.4, 4.0. Recibes el último parche de la versión minor solicitada.

Para fijar la versión, por este orden:

  • .ruby-version (se elimina un prefijo ruby-)
  • Una línea ruby "3.4.10" en el Gemfile (x.y.z completo)

La versión de Bundler se obtiene de la sección BUNDLED WITH de Gemfile.lock. Si no está, el builder usa su versión fijada: Bundler 2 para Ruby 3, Bundler 4 para Ruby 4.

Instalación y build

bundle install con BUNDLE_WITHOUT=development:test, en modo deployment si existe un Gemfile.lock (sin lockfile, Bundler resuelve las gems durante la build). Las apps Rails (config/environment.rb) ejecutan rake assets:precompile si esa tarea existe. La precompilación usa RAILS_ENV=production y SECRET_KEY_BASE_DUMMY=1.

Al arrancar, RAILS_ENV y RACK_ENV usan el valor production, los logs se envían a stdout y se define RAILS_SERVE_STATIC_FILES=enabled.

Comando de inicio

  • config/puma.rb: bundle exec puma -C config/puma.rb
  • config.ru: bundle exec rackup config.ru -p $PORT (5000 si PORT no está definida)
  • En otro caso: bundle exec ruby app.rb

Haz que Puma o Rack escuchen en PORT. Puedes sobrescribirlo con un Procfile.

Dale a tu agente un cloud.

Hasta 15 € de crédito al registrarte.

Continuar con GitHub

o con tu email

Mantente al día.

Novedades del producto, sin spam. Puedes darte de baja cuando quieras.