Ruby on Rails (RoR) es un marco de aplicación web de código abierto, publicado bajo licencia MIT. Ruby on Rails, o Rails está escrito en Ruby, es un marco de aplicación web del lado del servidor que sigue el concepto MVC (Model-View-Controller). Rails proporciona estructuras predeterminadas para la base de datos, el servicio web y las páginas web. Más de 3000 desarrolladores han contribuido con código al marco de Rails y hay muchas aplicaciones conocidas basadas en Rails, como Github, Airbnb, Soundcloud, etc.
En este tutorial, le mostraré cómo instalar Ruby on Rails en ubuntu 16.04 LTS. Le mostraré cómo instalar y configurar Rails con una base de datos PostgreSQL y cómo crear un nuevo primer proyecto con Rails.
Requisito previo
- Servidor Ubuntu 16.04.
- Privilegios de raíz.
Paso 1:instalar RVM
RVM o Ruby Version Manager es una herramienta de línea de comandos basada en Bash y Ruby para administrar la instalación de Ruby. RVM le permite instalar y configurar varias versiones de Ruby en un sistema.
En este paso, instalaremos la versión estable de RVM y agregaremos la clave del repositorio con el comando gpg.
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
Instale RVM estable. Asegúrese de que el comando curl esté instalado en su sistema.
curl -sSL https://get.rvm.io | bash -s stable --ruby
Ese comando instalará los paquetes necesarios para la instalación de RVM, luego descargará la última versión estable de RVM y la instalará.
Ahora podemos comenzar a usar RVM ejecutando el siguiente comando al principio:
source /usr/local/rvm/scripts/rvm
Paso 2:Instalar Ruby
La versión estable actual de Ruby es 2.3.1. Instálelo con el comando rvm y luego conviértalo en la versión Ruby predeterminada para su sistema.
Actualice rvm a la última versión estable, luego instale la versión Ruby 2.3.1.
rvm get stable --autolibs=enable
rvm install ruby-2.3.1
A continuación, haga que 2.3.1 sea la versión Ruby predeterminada en el sistema.
rvm --default use ruby-2.3.1
Ahora verifique la versión de Ruby con el siguiente comando:
ruby -v
Paso 3:Instalar Nodejs
Rails requiere un tiempo de ejecución de JavaScript para compilar la canalización de activos de Rails. Para el desarrollo de Rails en Ubuntu Linux, es mejor instalar Nodejs como tiempo de ejecución de Javascript.
Instale nodejs desde el repositorio de nodesource:
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
apt-get install -y nodejs
Paso 4:configurar Ruby Gem
RubyGems es un administrador de paquetes de Ruby. Viene con la gema herramienta de línea de comandos y se instala automáticamente cuando instalamos Ruby en el sistema.
Actualiza la versión de la gema y compruébalo:
gem update --system
gem -v
Esto es opcional, puede deshabilitar la instalación de la documentación en cada instalación de gema agregando una nueva línea al archivo .gemrc a continuación.
echo "gem: --no-document" >> ~/.gemrc
Paso 5:instalar Ruby on Rails 5 estable
Instale Ruby on Rails 5 con el siguiente comando gem:
gem install rails -v 5.0.0
Cuando la instalación finalice con éxito, verifique la versión de los rieles:
rails -v
Y verá los resultados de la versión de rieles:
Rails 5.0.0
Rails 5.0 se ha instalado en Ubuntu 16.04 con Ruby 2.3.1.
Paso 6:configuración de la base de datos PostgreSQL para el desarrollo de Rails
En este paso, prepararemos PostgreSQL para el desarrollo de Rails. Ruby on Rails admite muchas bases de datos como MySQL, SQLite (predeterminado) y PostgreSQL. Usaremos PostgreSQL como base de datos para esta guía.
Instale PostgreSQL y algunos otros paquetes necesarios con el comando apt:
apt-get -y install postgresql postgresql-contrib libpq-dev
Cuando finalice la instalación, inicie sesión en el usuario de postgres y acceda al shell de postgresql.
su - postgres
psql
Proporcione al usuario de postgres una nueva contraseña con el siguiente comando:
\password postgres
Enter new password:
Luego, cree un nuevo rol llamado 'rails-dev' para el desarrollo de rieles con el siguiente comando:
create role rails_dev with createdb login password 'aqwe123';
Establezca una nueva contraseña para el usuario y verifique que el usuario haya sido creado.
Ahora verifique el nuevo rol y verá que se ha creado un nuevo rol:
\du
La base de datos PostgreSQL ha sido preparada para Rails Development.
Paso 7:crea la primera aplicación con Rails y PostgreSQL
Ruby on Rails o Rails se envía con el comando "rails" y podemos iniciar nuestra primera aplicación con ese comando.
Cree una nueva aplicación "myapp" con PostgreSQL como base de datos predeterminada.
rails new myapp -d postgresql
Ese comando creará un nuevo directorio 'myapp' e instalará una nueva gema, incluida la gema pg que Rails necesita para conectarse a la base de datos PostgreSQL en ese directorio.
A continuación, vaya al directorio 'myapp' y edite el archivo base de datos.yml en el directorio de configuración.
cd myapp/
vim config/database.yml
En la sección de desarrollo, descomente la línea 32 y escriba el rol que hemos creado en el paso 6.
username: rails_dev
Establezca la contraseña de usuario de rails_dev en la línea 35.
password: aqwe123
Quite el comentario de las líneas 40 y 44 para la configuración del host de la base de datos.
host: localhost
port: 5432
Ahora vaya a la sección de prueba y agregue la nueva configuración a continuación:
database: myapp_test
host: localhost
port: 5432
username: rails_dev
password: aqwe123
Guardar y salir.
Luego, genera la base de datos con el comando rails:
rails db:setup
rails db:migrate
Y luego inicie el servidor Rails con el siguiente comando:
rails s -b 192.168.1.110 -p 8080
Abra su navegador web y visite la dirección IP del servidor en el puerto 8080 - 192.168.1.110:8080.
Regrese a la terminal y cree un nuevo andamio para interactuar con la base de datos de PostgreSQL.
Escribe el siguiente comando:
rails g scaffold Post title:string body:text
rake db:migrate
Vuelva a ejecutar el servidor Rails.
rails s -b 192.168.1.110 -p 8080
Visita el servidor:192.168.1.110:8080/posts
Verá CRUD simple en Ruby on Rails con PostgreSQL.