Como hacer deploy de una aplicación Sinatra

4 de enero, 2013 @ 09:13 — 0 comentariosDescargar PDF

En esta guía te explicamos como debes instalar o hacer deploy de una aplicación Sinatra. Aunque no los explicamos puedes o te conviene hacer uso de Bundler para gestionar las dependencias de la misma, tal y como recomendamos con Rails 3. Ten en cuenta que debes acceder mediante SSH a tu cuenta de hosting y ejecutar algunos comandos.

Antes de continuar con esta guía es importante que configures correctamente el entorno Ruby.

1 - Configurar aplicación Rack desde el panel de hosting

Accede al panel de Hosting y luego pincha sobre el icono Aplicaciones Ruby. Una vez allí rellenar y envía el formulario, tal y como se ve en la siguiente imagen:

Configurar aplicación Ruby

Como estas haciendo deploy de una aplicación Sinatra que cumple la especificación Rack, debes seleccionar Rack como tipo de aplicación.

No puedes configurar una aplicación Ruby en una "carpeta", es decir, la dirección dominio.com/tienda no es válida. Sólo puedes configurar aplicaciones en la raíz de un dominio o subdominio, por ejemplo: tienda.dominio.com.

2 - Instala la gema Sinatra

Accede a tu cuenta de hosting mediante SSH y ejecuta:

gem install sinatra

3 - Define el archivo config.ru

Para que el servidor web sepa como servir la aplicación Sinatra debes ubicar en el directorio raíz de la aplicación un archivo config.ru con las instrucciones básicas para cargar la aplicación.

Al configurar la nueva aplicación desde el panel de hosting, te habremos indicado cual es el directorio raíz de la aplicación. Suponiendo que le hayas dado el nombre "miapp" entonces su directorio raíz será /home/<usuario>/ruby/miapp.

Tendrás que crear la carpeta /home/<usuario>/ruby/miapp y ubicar dentro del mismo el archivo config.ru y el resto de la aplicación.

Suponiendo que estas creado una nueva aplicación, el contenido del config.ru podría ser:

require 'rubygems'
require 'sinatra'
require 'app.rb'
run Sinatra::Application

Este config.ru lo que hace es ejecutar un archivo llamado app.rb donde tu tendrás que ubicar el código de tu aplicación Sinatra.

4 - Crea o sube la aplicación a tu cuenta de hosting

Siguiendo con el ejemplo, el directorio raíz de tu aplicación será /home/<usuario>/ruby/miapp y por tanto debes crear o subir la aplicación en dicho directorio. Como mínimo tendrías que tener los archivos y directorios:

app.rb
config.ru
public/
tmp/

Si vas a crear una nueva aplicación desde cero, teniendo en cuenta el config.ru sugerido deberíass crear un archivo llamado app.rb. El ejemplo básico sería:

get '/' do
  'Hello world!'
end

Es importante que el archivo public/.htaccess no contenga ninguna de las siguientes directivas: RailsBaseURI, RackBaseURI, PassengerAppRoot y SetEnv GEM_PATH.

Etiquetas: