Esta guía paso a paso le brinda una breve introducción a Ruby on Rails y luego lo guía a través de los pasos para instalar Ruby on Rails en sistemas operativos Linux. Al final, aprenderá cómo crear una nueva aplicación Rails y probarla a través del navegador web.
Introducción a Ruby on Rails
Ruby on Rails, o Rails, es un marco de desarrollo de aplicaciones web de código abierto escrito en el lenguaje de programación Ruby. Rails es un marco de aplicación web del lado del servidor que facilita el uso de estándares web como JSON
o XML
para transferencia de datos y HTML
, CSS
y JavaScript
para la interfaz de usuario.
Con Rails, podemos crear aplicaciones web modernas con menos código y lograr más que otros lenguajes y marcos. Cientos de miles de aplicaciones se construyen usando Rails. Algunas de las aplicaciones populares son Basecamp, GitHub, HEY, Shopify, Airbnb, Twitch, SoundCloud, Hulu, Zendesk y muchas.
Ruby on Rails es creado por David Heinemeier Hansson , un programador danés, piloto de carreras y autor de best-sellers. Hansson lanzó Rails por primera vez como código abierto en julio de 2004. Rails se hizo popular cuando Apple anunció que enviaría Ruby on Rails con Mac OS X v10.5.
1. Instalar Ruby on Rails en Linux
En primer lugar, actualice su sistema Linux.
Si está en Debian y sus derivados como Ubuntu, puede actualizar su sistema usando apt
como a continuación:
$ sudo apt update
$ sudo apt upgrade
En Fedora, RHEL y sus clones como CentOS, AlmaLinux:
$ sudo dnf --refresh upgrade
Para actualizar openSUSE, ejecute:
$ sudo zypper update
$ sudo zypper upgrade
Reinicie su sistema para aplicar y completar las actualizaciones:
$ sudo reboot
Antes de instalar Rails, asegúrese de haber instalado los siguientes requisitos previos.
- Rubí - Un lenguaje de programación dinámico y de código abierto centrado en la simplicidad y la productividad.
SQLite3 - Es el backend de base de datos predeterminado para Rails. Se instalará como requisito cuando instalemos Ruby.- Node.js - Un entorno de tiempo de ejecución JavaScript multiplataforma de código abierto para crear aplicaciones de red escalables.
- Hilo - Un administrador de paquetes moderno para instalar y administrar programas JavaScript.
1.1. Instalar Rubí en Linux
Ruby está empaquetado para muchas distribuciones de Linux y está disponible en sus repositorios predeterminados. Entonces puede instalar usando el administrador de paquetes predeterminado de su distribución. Sin embargo, la versión de Ruby disponible en los repositorios puede ser un poco antigua. Por lo tanto, puede usar instaladores de terceros y administradores de Ruby.
Muchos usuarios de Ruby usan administradores de Ruby para administrar varios Ruby. Permiten un cambio fácil o incluso automático entre las versiones de Ruby. A los efectos de esta guía, utilizaremos RVM .
RVM, significa R uby V versión M anager, le permite instalar y administrar múltiples instalaciones de Ruby en su sistema Linux. También puede gestionar diferentes conjuntos de gemas. Está disponible para macOS, Linux u otros sistemas operativos similares a UNIX.
Instale el paquete GPG2 que se necesita para agregar claves RVM GPG:
$ sudo apt install gnupg2
Y luego importe las claves RVM GPG ingresando el siguiente comando en su Terminal:
$ gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
Después de agregar la clave, ejecute el siguiente comando para instalar RVM en Linux:
$ curl -sSL https://get.rvm.io | bash -s stable
Salida de muestra:
Downloading https://github.com/rvm/rvm/archive/1.29.12.tar.gz Downloading https://github.com/rvm/rvm/releases/download/1.29.12/1.29.12.tar.gz.asc gpg: Signature made Fri Jan 15 18:46:22 2021 UTC gpg: using RSA key 7D2BAF1CF37B13E2069D6956105BD0E739499BDB gpg: Good signature from "Piotr Kuczynski <[email protected]>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: 7D2B AF1C F37B 13E2 069D 6956 105B D0E7 3949 9BDB GPG verified '/home/ostechnix/.rvm/archives/rvm-1.29.12.tgz' Installing RVM to /home/ostechnix/.rvm/ Adding rvm PATH line to /home/ostechnix/.profile /home/ostechnix/.mkshrc /home/ostechnix/.bashrc /home/ostechnix/.zshrc. Adding rvm loading line to /home/ostechnix/.profile /home/ostechnix/.bash_profile /home/ostechnix/.zlogin. Installation of RVM in /home/ostechnix/.rvm/ is almost complete: * To start using RVM you need to run `source /home/ostechnix/.rvm/scripts/rvm` in all your open shell windows, in rare cases you need to reopen all shell windows. Thanks for installing RVM 🙏 Please consider donating to our open collective to help us maintain RVM. 👉 Donate: https://opencollective.com/rvm/donate
La instalación de RVM está casi completa. ¡Debe ejecutar un último paso antes de instalar Ruby!
Como habrá notado en el resultado anterior, hay una línea que dice: Para comenzar a usar RVM, debe ejecutar `source /home/ostechnix/.rvm/scripts/rvm`
.
Así que déjame ejecutar el siguiente comando para iniciar RVM:
$ source /home/ostechnix/.rvm/scripts/rvm
Reemplace /home/ostechnix
con tu propio nombre de usuario. El comando anterior establecerá la ruta del entorno RVM.
Si está en sistemas basados en RHEL (por ejemplo, CentOS), es posible que deba ejecutar el siguiente comando para agregar RVM a $PATH
.
# source /etc/profile.d/rvm.sh
Acabamos de instalar RVM y agregarlo a $PATH
. Ahora vamos a instalar los requisitos necesarios para RVM.
Para instalar los requisitos de RVM, simplemente ejecute:
$ rvm requirements
Salida de muestra:
Checking requirements for ubuntu. Installing requirements for ubuntu. Updating system… Installing required packages: g++, gcc, autoconf, automake, bison, libc6-dev, libffi-dev, libgdbm-dev, libncurses5-dev, libsqlite3-dev, libtool, libyaml-dev, make, pkg-config, sqlite3, zlib1g-dev, libgmp-dev, libreadline-dev, libssl-dev………………………….. Requirements installation successful.
El comando anterior instala todos los paquetes necesarios, incluido SQLite. Es hora de instalar Ruby usando RVM.
Primero, verifiquemos qué versión de Ruby está disponible usando el siguiente comando:
$ rvm list known
Salida de muestra:
MRI Rubies [ruby-]1.8.6[-p420] [ruby-]1.8.7[-head] # security released on head [ruby-]1.9.1[-p431] [ruby-]1.9.2[-p330] [ruby-]1.9.3[-p551] [ruby-]2.0.0[-p648] [ruby-]2.1[.10] [ruby-]2.2[.10] [ruby-]2.3[.8] [ruby-]2.4[.10] [ruby-]2.5[.8] [ruby-]2.6[.6] [ruby-]2.7[.2] [ruby-]3[.0.0] ruby-head [...]
Al momento de escribir esta guía, la última versión disponible de Ruby era 3.0.0. .
Para instalar la versión más reciente de Ruby usando RVM en Linux, ejecute:
$ rvm install ruby
Salida de muestra:
Searching for binary rubies, this might take some time. Found remote file https://rvm_io.global.ssl.fastly.net/binaries/ubuntu/20.04/x86_64/ruby-3.0.0.tar.bz2 Checking requirements for ubuntu. Requirements installation successful. ruby-3.0.0 - #configure ruby-3.0.0 - #download % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 26.7M 100 26.7M 0 0 1186k 0 0:00:23 0:00:23 --:--:-- 1307k ruby-3.0.0 - #validate archive ruby-3.0.0 - #extract ruby-3.0.0 - #validate binary ruby-3.0.0 - #setup ruby-3.0.0 - #gemset created /home/ostechnix/.rvm/gems/[email protected] ruby-3.0.0 - #importing gemset /home/ostechnix/.rvm/gemsets/global.gems……………………………. ruby-3.0.0 - #generating global wrappers…….. ruby-3.0.0 - #gemset created /home/ostechnix/.rvm/gems/ruby-3.0.0 ruby-3.0.0 - #importing gemsetfile /home/ostechnix/.rvm/gemsets/default.gems evaluated to empty gem list ruby-3.0.0 - #generating default wrappers……..
También puede instalar una versión específica de Ruby mencionando explícitamente su versión. Por ejemplo, el siguiente comando instalará Ruby 2.7.2 versión.
$ rvm install ruby-2.7.2
Compruebe la versión de Ruby instalada:
$ ruby --version ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x86_64-linux]
Enumere todas las versiones de Ruby instaladas:
$ rvm list
Salida de muestra:
=* ruby-3.0.0 [ x86_64 ] => - current =* - current && default * - default
Si ha instalado varias versiones de Ruby, puede establecer la versión predeterminada de Ruby como se muestra a continuación:
$ rvm use 3.0.0 --default
1.2. Instalar SQLite
SQLite es un sistema de gestión de bases de datos relacionales contenido en una C biblioteca. SQLite es el motor de base de datos más implementado. Se usa en casi todas partes, incluidos los navegadores web, los sistemas operativos y los sistemas integrados. Rails utiliza SQLite3 como base de datos predeterminada.
SQLite se instala automáticamente cuando instalamos los requisitos de RVM en el paso anterior. Así que no nos molestemos con la instalación de SQLite.
1.3. Instalar Nodejs
Algunas funciones de Rails, como Asset Pipeline, dependen de un tiempo de ejecución de JavaScript. Dado que Nodejs proporciona esta funcionalidad, instálela como se describe en el siguiente enlace.
- Cómo instalar NodeJS en Linux
1.4. Instalar hilo
Yarn es un administrador de paquetes de JavaScript y una alternativa más rápida a NPM. La ventaja de usar Yarn with Rails es que facilitas la gestión de bibliotecas CSS y JavaScript en tu proyecto. Su comportamiento es similar al de las gemas Ruby, pero en un universo front-end. Los rieles admiten hilo fuera de la caja.
Si aún no ha instalado Yarn, consulte la siguiente guía.
- Cómo instalar y usar Yarn Package Manager en Linux
1.5. Instalar rieles
Después de instalar todos los requisitos previos antes mencionados, ejecute el siguiente comando para instalar Ruby on Rails en su sistema Linux:
$ gem install rails
Verifique la versión de Rails instalada usando el comando:
$ rails --version Rails 6.1.3.2
Si desea instalar una versión específica de Rails, por ejemplo 5.2.0 , el comando sería:
$ gem install rails -v 5.2.0
Puede enumerar todas las versiones de Rails disponibles buscando sus versiones con el siguiente comando:
$ gem search '^rails$' --all
Al momento de escribir esta guía, estas son las gemas remotas disponibles:
*** REMOTE GEMS ***
rails (6.1.3.2, 6.1.3.1, 6.1.3, 6.1.2.1, 6.1.2, 6.1.1, 6.1.0, 6.0.3.7, 6.0.3.6, 6.0.3.5, 6.0.3.4, 6.0.3.3, 6.0.3.2, 6.0.3.1, 6.0.3, 6.0.2.2, 6.0.2.1, 6.0.2, 6.0.1, 6.0.0, 5.2.6, 5.2.5, 5.2.4.6, 5.2.4.5, 5.2.4.4, 5.2.4.3, 5.2.4.2, 5.2.4.1, 5.2.4, 5.2.3, 5.2.2.1, 5.2.2, 5.2.1.1, 5.2.1, 5.2.0, 5.1.7, 5.1.6.2, 5.1.6.1, 5.1.6, 5.1.5, 5.1.4, 5.1.3, 5.1.2, 5.1.1, 5.1.0, 5.0.7.2, 5.0.7.1, 5.0.7, 5.0.6, 5.0.5, 5.0.4, 5.0.3, 5.0.2, 5.0.1, 5.0.0.1, 5.0.0, 4.2.11.3, 4.2.11.2, 4.2.11.1, 4.2.11, 4.2.10, 4.2.9, 4.2.8, 4.2.7.1, 4.2.7, 4.2.6, 4.2.5.2, 4.2.5.1, 4.2.5, 4.2.4, 4.2.3, 4.2.2, 4.2.1, 4.2.0, 4.1.16, 4.1.15, 4.1.14.2, 4.1.14.1, 4.1.14, 4.1.13, 4.1.12, 4.1.11, 4.1.10, 4.1.9, 4.1.8, 4.1.7.1, 4.1.7, 4.1.6, 4.1.5, 4.1.4, 4.1.3, 4.1.2, 4.1.1, 4.1.0, 4.0.13, 4.0.12, 4.0.11.1, 4.0.11, 4.0.10, 4.0.9, 4.0.8, 4.0.7, 4.0.6, 4.0.5, 4.0.4, 4.0.3, 4.0.2, 4.0.1, 4.0.0, 3.2.22.5, 3.2.22.4, 3.2.22.3, 3.2.22.2, 3.2.22.1, 3.2.22, 3.2.21, 3.2.20, 3.2.19, 3.2.18, 3.2.17, 3.2.16, 3.2.15, 3.2.14, 3.2.13, 3.2.12, 3.2.11, 3.2.10, 3.2.9, 3.2.8, 3.2.7, 3.2.6, 3.2.5, 3.2.4, 3.2.3, 3.2.2, 3.2.1, 3.2.0, 3.1.12, 3.1.11, 3.1.10, 3.1.9, 3.1.8, 3.1.7, 3.1.6, 3.1.5, 3.1.4, 3.1.3, 3.1.2, 3.1.1, 3.1.0, 3.0.20, 3.0.19, 3.0.18, 3.0.17, 3.0.16, 3.0.15, 3.0.14, 3.0.13, 3.0.12, 3.0.11, 3.0.10, 3.0.9, 3.0.8, 3.0.7, 3.0.6, 3.0.5, 3.0.4, 3.0.3, 3.0.2, 3.0.1, 3.0.0, 2.3.18, 2.3.17, 2.3.16, 2.3.15, 2.3.14, 2.3.12, 2.3.11, 2.3.10, 2.3.9, 2.3.8, 2.3.7, 2.3.6, 2.3.5, 2.3.4, 2.3.3, 2.3.2, 2.2.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.4, 2.0.2, 2.0.1, 2.0.0, 1.2.6, 1.2.5, 1.2.4, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.6, 1.1.5, 1.1.4, 1.1.3, 1.1.2, 1.1.1, 1.1.0, 1.0.0, 0.14.4, 0.14.3, 0.14.2, 0.14.1, 0.13.1, 0.13.0, 0.12.1, 0.12.0, 0.11.1, 0.11.0, 0.10.1, 0.10.0, 0.9.5, 0.9.4.1, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0, 0.8.5, 0.8.0)
La versión más reciente aparecerá en primer lugar.
2. Crear una nueva aplicación Rails
¡Rails consta de muchos scripts llamados generadores que facilitan el desarrollo de su aplicación! Uno de los generadores es la nueva aplicación generador que se utiliza para crear una nueva aplicación Rails.
Para crear una nueva aplicación Rails llamada ostechnixapp
, ejecuta:
$ rails new ostechnixapp
Esto creará una aplicación Rails llamada ostechnixapp en un directorio llamado ostechnixapp
e instale las dependencias de gemas que ya se mencionan en Gemfile
usando bundle install
.
Después de crear la ostechnixapp
aplicación, cambie a su directorio:
$ cd ostechnixapp/
Este directorio contiene varios archivos y subdirectorios. El subdirectorio principal es app
, que contiene los controladores, modelos, vistas, asistentes, programas de correo, canales, trabajos y activos para su aplicación.
Para ver nuestra aplicación recién creada, iniciemos un servidor web usando el comando:
$ bin/rails server
O,
$ rails server
Esto iniciará Puma , un servidor web distribuido con Rails por defecto.
Para ver su aplicación en acción, abra su navegador web y vaya a http://localhost:3000 . Debería ver la página de información predeterminada de Rails:
Si ves "¡Yay! ¡Estás sobre rieles!" página, felicidades! ¡¡Estás listo!! Ruby on Rails está correctamente instalado y configurado en su sistema Linux. Para salir del servidor web, simplemente presione CTRL+C
.
De forma predeterminada, puede acceder a la página de prueba de Rails solo desde su máquina local. Si desea acceder a la página de prueba predeterminada de Rails desde otra máquina en la red, ejecute:
$ rails server -b 0.0.0.0
Ahora puede acceder a la página de prueba de Rails desde cualquier sistema de la red navegando a http://ip-address:3000
desde la ventana del navegador.
Es posible que también deba permitir el puerto 3000
en su cortafuegos/enrutador.
También puede usar un puerto diferente pasando el -p marca junto con el número de puerto como se muestra a continuación:
$ rails server -b 0.0.0.0 -p 8080
Ahora puede acceder a su aplicación Rails utilizando esta URL:http://ip-address:8080
3. Utilice la aplicación MySQL con Rails
Si bien Sqlite funciona muy bien con Rails, algunas veces puede no ser suficiente para su aplicación Rails. Si desea escalabilidad, concurrencia, centralización y control, puede probar bases de datos más robustas como MySQL o PostgreSQL. La siguiente guía explica cómo usar MySQL con la aplicación Ruby on Rails.
- Cómo utilizar MySQL con la aplicación Ruby on Rails
4. Utilice PostgreSQL con la aplicación Rails
PostgreSQL es otra base de datos recomendada para usar con aplicaciones Rails. Si desea utilizar PostgreSQL en lugar de MySQL para sus proyectos Rail, la siguiente guía le ayudará.
- Cómo usar PostgreSQL con la aplicación Ruby on Rails
5. Quitar RVM
Después de instalar Ruby, probablemente no necesite RVM. De modo que puede desinstalar RVM si ya no lo necesita.
Para hacerlo, edite su ~/.bashrc
archivo:
$ nano ~/.bashrc
Desplácese hacia abajo hasta el final y elimine las siguientes líneas:
[...] Add RVM to PATH for scripting. Make sure this is the last PATH variable chang> export PATH="$PATH:$HOME/.rvm/bin"
Presiona CTRL+W
seguido de CTRL+X
para guardar y cerrar el archivo.
Obtenga el ~/.bashrc
para que los cambios surtan efecto inmediatamente.
$ source ~/.bashrc
Finalmente, elimine el directorio RVM:
$ rm -r ~/.rvm/
Conclusión
En esta etapa, debe aprender qué es Ruby on Rails, cómo instalar Ruby on Rails en Linux usando RVM y finalmente cómo crear una aplicación Rails de muestra y probarla a través del navegador web. Comience a desarrollar sus aplicaciones Rails.