Cómo instalar Ruby on Rails en Ubuntu 18.04 LTS

Ruby on Rails (RoR) es un marco de aplicación web de código abierto, publicado bajo la licencia MIT. Es un marco de aplicación web del lado del servidor que sigue el concepto MVC (Modelo-Vista-Controlador).

Rails proporciona estructuras por defecto para la base de datos, el servicio web y las páginas web. Más de 3000 desarrolladores han contribuido con código al framework Rails y hay muchas aplicaciones conocidas basadas en Rails, como Github, Airbnb, Soundcloud, etc.

En este tutorial, te mostraré los pasos para instalar Ruby on Rails en Ubuntu 18.04 LTS. Te mostraremos cómo instalar y configurar Rails con una base de datos PostgreSQL, y cómo crear un nuevo primer proyecto con Rails.

Requisitos previos

  • Ubuntu 18.04 LTS
  • Privilegios de root

¿Qué vamos a hacer?

  1. Instalar RVM (Ruby Version Manager)
  2. Instalar Ruby
  3. Instalar Nodejs
  4. Configurar Ruby Gem
  5. Instalar Ruby on Rails
  6. Configurar la base de datos PostgreSQL para el desarrollo de Rails
  7. Crea tu primera aplicación con Rails y PostgreSQL

Paso 1 – Instalar RVM (Ruby Version Manager)

RVM (Ruby Version Manager) es una herramienta de línea de comandos basada en Bash y Ruby para gestionar la instalación de Ruby. RVM te permite instalar y configurar varias versiones de ruby en un mismo sistema.

El primer paso que vamos a hacer es instalar los paquetes rvm utilizando el script instalador.

Añade la clave rvm al servidor.

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \
7D2BAF1CF37B13E2069D6956105BD0E739499BDB

Instala la versión estable de rvm ejecutando el siguiente comando.

curl -sSL https://get.rvm.io | bash -s stable --ruby

El comando instalará automáticamente los paquetes necesarios, e instalará la última versión estable de rvm.

Una vez completada la instalación, ejecuta el siguiente comando.

source /usr/local/rvm/scripts/rvm

Instalar el RVM

Ahora puedes utilizar el comando rvm para gestionar la versión de ruby.

rvm version

Paso 2 – Instalar la última versión de ruby

La última versión de ruby en este momento es Ruby 2.5.1, y se instalará automáticamente durante la instalación de rvm, cuando no haya ningún paquete ruby en el sistema.

En este paso, configuraremos la versión de ruby por defecto en el sistema Ubuntu.

Actualiza el rvm a la última versión estable.

rvm get stable --autolibs=enable
usermod -a -G rvm root

Ahora comprueba todas las versiones de ruby disponibles.

rvm list known

Y obtendrás un montón de versiones disponibles de ruby – instala la última versión estable Ruby 2.5.1 utilizando el comando rvm como se muestra a continuación.

rvm install ruby-2.5.1

Una vez completada la instalación, haz que ruby 2.5.1 sea la versión por defecto en el sistema Ubuntu.

rvm --default use ruby-2.5.1

Comprueba la versión de Ruby.

ruby -v

Ahora verás que ruby 2.5.1 es la versión de ruby por defecto en el sistema Ubuntu 18.04.

Configurar la última versión de Ruby

Paso 3 – Instalar Nodejs

Ruby on Rails requiere un tiempo de ejecución de JavaScript para compilar la cadena de activos de Rails. Y para el desarrollo de Rails en Ubuntu Linux, lo mejor es instalar y utilizar Nodejs como tiempo de ejecución de Javascript.

Añade el repositorio nodejs nodesource al sistema.

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -

Instala la última versión nodejs 10 y algunos paquetes adicionales utilizando el comando apt que aparece a continuación.

sudo apt install -y nodejs
sudo apt install gcc g++ make

El nodejs 10 ha sido instalado en el sistema Ubuntu 18.04.

Paso 4 – Configurar Ruby Gem

RubyGems es un gestor de paquetes de Ruby, que viene con la herramienta de línea de comandos gem. Se instala automáticamente cuando instalamos Ruby en el sistema.

Actualiza gem a la última versión y compruébalo.

gem update --system
gem -v

Nota:

Esto es opcional, podemos desactivar que gem instale la documentación en cada instalación de paquetes de ruby. Simplemente añadiendo la configuración al archivo de configuración ‘.gemrc’.

echo "gem: --no-document" >> ~/.gemrc

Paso 5 – Instalar Ruby on Rails

En este tutorial, utilizaremos la última versión estable de Ruby on Rails 5.2.0. Instalaremos Rails utilizando el gestor de paquetes gem ruby.

Instala Ruby on Rails 5.2.0 utilizando el siguiente comando.

gem install rails -v 5.2.0

Una vez completada la instalación, comprueba la versión de rails.

rails -v

Y el resultado debería ser el siguiente

Instalar Ruby on Rails

Ruby on Rails 5.2.0 ha sido instalado en Ubuntu 18.04 LTS.

Paso 6 – Configurar la base de datos PostgreSQL para el desarrollo de Rails

Por defecto, Ruby on Rails utiliza la base de datos SQLite. Soporta muchos sistemas de bases de datos, incluyendo MySQL, SQLite y PostgreSQL. Y para esta guía, utilizaremos PostgreSQL.

Instala la base de datos PostgreSQL utilizando el comando apt que aparece a continuación.

sudo apt install postgresql postgresql-contrib libpq-dev -y

Una vez completada la instalación, inicia el servicio Postgres y habilítalo para que se inicie siempre al arrancar el sistema.

systemctl start postgresql
systemctl enable postgresql

A continuación, configuraremos una contraseña para el usuario Postgres, y crearemos un nuevo usuario para la instalación de Rails.

Accede al usuario ‘postgres’ y ejecuta el shell de Postgres.

su - postgres
psql

Cambia la contraseña de Postgres utilizando la consulta que aparece a continuación.

\password postgres

Escribe tu contraseña y la contraseña del usuario postgres se habrá añadido.

Ahora crearemos un nuevo rol para nuestra instalación de rails. Crearemos un nuevo rol llamado ‘rails_dev’ con el privilegio de crear la base de datos y con la contraseña ‘aqwe123’.

Ejecuta la consulta Postgres que aparece a continuación.

create role rails_dev with createdb login password 'aqwe123';

Ahora comprueba todos los roles disponibles en el sistema.

\du

Y obtendrás el rol ‘rails_dev’ en la lista.

Configuración de PostGres

La instalación y configuración de PostgreSQL para Rails Development se ha completado.

Paso 7 – Crea tu primera aplicación con Rails y PostgreSQL

Ruby on Rails proporciona una línea de comandos ‘rails’ para arrancar nuestra primera aplicación rails.

Crea un nuevo proyecto ‘myapp’ con la base de datos por defecto ‘PostgreSQL’ ejecutando el siguiente comando rails.

rails new myapp -d postgresql

Ahora verás el directorio ‘myapp’, ve a ese directorio y edita el archivo de configuración de la base de datos ‘database.yml’ utilizando el editor vim .

cd myapp/
vim config/database.yml

Hay diferentes secciones de configuración para cada configuración: Desarrollo, Pruebas y Producción.

En la sección de desarrollo, descomenta esas líneas y cambia el valor como se indica a continuación.

username: rails_dev
password: aqwe123
host: localhost
port 5423

Para la sección de pruebas, pega esas configuraciones en la sección de pruebas.

  host: localhost
  port: 5432
  username: rails_dev
  password: aqwe123

Guarda y sal.

Ahora genera la base de datos y asegúrate de que no hay ningún error.

rails db:setup
rails db:migrate

Cuando toda la configuración se haya completado, inicia el servidor web puma rails por defecto utilizando el siguiente comando.

rails s -b 192.168.1.10 -p 8080

El primer proyecto rails se ejecutará en la dirección IP ‘192.168.1.10’ con el puerto 8080.

Crear una aplicación Ruby

Abre tu navegador web y escribe la dirección IP del servidor en la barra de direcciones.

http://192.168.1.10:8080/

Obtendrás la página de inicio del proyecto rails por defecto, como se muestra a continuación.

La aplicación Ruby on Rails funciona

A continuación, vamos a probar a crear un CRUD sencillo con la base de datos PostgreSQL en rails.

Ejecuta el comando rails que aparece a continuación.

rails g scaffold Post title:string body:text
rake db:migrate

Ejecuta de nuevo el servidor web puma.

rails s -b 192.168.1.10 -p 8080

Y abre el navegador web con la siguiente URL.

http://192.168.1.10:8080/posts/

Ahora obtendrás el formulario CRUD simple.

Aplicación de prueba escrita en RoR

Y el siguiente es mi resultado después de crear un post sencillo.

La instalación de Ruby on Rails con la base de datos PostgreSQL en Ubuntu 18.04 LTS se ha completado con éxito.

También te podría gustar...