Introducción
Ruby on Rails es una pila de aplicaciones popular para desarrolladores que buscan crear sitios y aplicaciones web. El lenguaje de programación Ruby, combinado con el marco de desarrollo Rails, hace que el desarrollo de aplicaciones sea rápido y eficiente.
Una forma de instalar Ruby y Rails es mediante la herramienta de línea de comandos rbenv. El uso de rbenv te proporcionará un entorno bien controlado y robusto para desarrollar tus aplicaciones de Ruby on Rails, lo que te permitirá cambiar fácilmente tu versión de Ruby de trabajo según sea necesario.
rbenv proporciona soporte para especificar versiones de Ruby específicas de la aplicación, te permite cambiar el Ruby global para cada usuario y te permite usar una variable de entorno para anular la versión de Ruby.
En este tutorial, utilizarás rbenv para instalar y configurar Ruby on Rails en tu máquina local macOS.
Requisitos previos
Para seguir este tutorial, necesitarás:
- Una computadora o máquina virtual con macOS instalado, con acceso administrativo a esa máquina y una conexión a Internet. Este tutorial ha sido probado en macOS 12.4 Monterey.
- Node.js está instalado en tu máquina macOS, como se explica en Cómo instalar Node.js y crear un entorno de desarrollo local en macOS. Algunas características de Rails, como el Asset Pipeline, dependen de un tiempo de ejecución de JavaScript. Node.js proporciona esta funcionalidad.
- El gestor de paquetes Homebrew está instalado en tu máquina macOS.
Paso 1 — Instalación de rbenv
En este paso, instalarás rbenv y te asegurarás de que se inicie automáticamente al arrancar. Para hacer esto en macOS, este tutorial utilizará el gestor de paquetes Homebrew.
Para descargar el paquete rbenv
con Homebrew, ejecuta el siguiente comando:
- brew install rbenv
Esto instalará rbenv y el complemento [ruby-build] (https://github.com/rbenv/ruby-build). Este complemento añade el comando rbenv install
, que agiliza el proceso de instalación para nuevas versiones de Ruby. Esto puede instalar varias otras dependencias y llevar algún tiempo.
A continuación, agregarás el comando eval "$(rbenv init -)"
a tu archivo ~/.bash_profile
para que rbenv se cargue automáticamente al abrir la Terminal. Para hacer esto, abre tu archivo .bash_profile
en nano
o tu editor de texto favorito:
- nano .bash_profile
Añade la siguiente línea al archivo:
eval "$(rbenv init -)"
Guarda y cierra el archivo.
Luego, aplica los cambios que realizaste en tu archivo ~/.bash_profile
a tu sesión actual de la terminal:
- source ~/.bash_profile
Para verificar que rbenv está configurado correctamente, utiliza el comando type
, que mostrará más información sobre el comando rbenv
:
- type rbenv
Tu ventana de la terminal mostrará lo siguiente:
Outputrbenv is a function
rbenv ()
{
local command;
command="${1:-}";
if [ "$#" -gt 0 ]; then
shift;
fi;
case "$command" in
rehash | shell)
eval "$(rbenv "sh-$command" "$@")"
;;
*)
command rbenv "$command" "$@"
;;
esac
}
En este punto, tanto rbenv como ruby-build están instalados en tu máquina. Esto te permitirá instalar Ruby desde la línea de comandos en el próximo paso.
Paso 2 — Instalación de Ruby
Con el complemento ruby-build ahora instalado, puedes instalar cualquier versión de Ruby que necesites mediante un solo comando. En este paso, elegirás una versión de Ruby, la instalarás en tu máquina y luego verificarás la instalación.
Primero, utiliza la bandera -l
para listar las versiones disponibles de Ruby. Ten en cuenta que también pueden estar disponibles versiones recientes no listadas. Por ejemplo, si la salida de este comando lista Ruby 3.0.5
, es probable que también puedas instalar 3.0.4
.
- rbenv install -l
Output2.6.10
2.7.6
3.0.4
3.1.2
jruby-9.3.6.0
mruby-3.1.0
picoruby-3.0.0
rbx-5.0
truffleruby-22.1.0
truffleruby+graalvm-22.1.0
La salida de ese comando será una larga lista de versiones entre las que puedes elegir instalar.
Para este tutorial, instalaremos Ruby 3.1.2:
- rbenv install 3.1.2
La instalación de Ruby puede ser un proceso largo, así que prepárate para que la instalación tarde un tiempo en completarse.
Una vez que haya terminado de instalar, establezca esta versión como su versión predeterminada de Ruby con el subcomando global
:
- rbenv global 3.1.2
Verifica que Ruby se haya instalado correctamente verificando su número de versión:
- ruby -v
Tu salida se verá algo como esto:
Outputruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-darwin21]
Para instalar y usar una versión diferente de Ruby, ejecuta los comandos rbenv
con un número de versión diferente, como rbenv install 2.7.6
y rbenv global 2.7.6
.
Ahora tienes una versión de Ruby instalada y has establecido tu versión predeterminada de Ruby. A continuación, te prepararás para trabajar con paquetes y bibliotecas de Ruby, o gems, lo que te permitirá instalar Rails.
Paso 3 — Trabajando con Gems
Gems son paquetes de bibliotecas y programas de Ruby que se pueden distribuir en todo el ecosistema de Ruby. Utilizas el comando gem
para gestionar estas gems. En este paso, configurarás el comando gem
para prepararte para la instalación de Rails.
Cuando instalas una gema, el proceso de instalación genera documentación local. Esto puede agregar una cantidad significativa de tiempo a cada proceso de instalación de gema, por lo que puedes desactivar la generación de documentación local creando un archivo llamado ~/.gemrc
que contenga una configuración para desactivar esta función:
- echo "gem: --no-document" > ~/.gemrc
Una vez hecho esto, utiliza el comando gem
para instalar Bundler, una herramienta que gestiona las dependencias de las gemas para los proyectos. Esto es necesario para que Rails funcione correctamente:
- gem install bundler
Verás una salida como esta:
OutputFetching: bundler-2.3.18.gem
Successfully installed bundler-2.3.18
1 gem installed
Puedes utilizar el comando gem env
para obtener más información sobre el entorno y la configuración de las gemas. Para ver la ubicación de las gemas instaladas, utiliza el argumento home
, así:
- gem env home
Verás una salida similar a esta:
/Users/sammy/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0
Ahora que has configurado y explorado tu flujo de trabajo con gemas, estás libre de instalar Rails.
Paso 4 — Instalando Rails
Para instalar Rails, utiliza el comando gem install
:
- gem install rails
El comando gem
instala la gema que especifiques, así como todas sus dependencias. Rails es un marco de desarrollo web complejo y tiene muchas dependencias, por lo que el proceso tomará algún tiempo en completarse. Eventualmente verás un mensaje que indica que Rails está instalado, junto con sus dependencias:
Output...
Successfully installed rails-7.0.3.1
35 gems installed
Nota: Si deseas instalar una versión diferente de Rails, puedes enumerar las versiones válidas de Rails realizando una búsqueda, lo que generará una larga lista de posibles versiones. Luego, puedes instalar una versión específica, como 4.2.7, utilizando la bandera -v
:
- gem search '^rails$' --all
- gem install rails -v 4.2.7
rbenv funciona creando un directorio de shims, o bibliotecas que interceptan llamadas y las cambian o redirigen. En este caso, los shims apuntan los comandos de Ruby a los archivos utilizados por la versión de Ruby que está actualmente habilitada. A través del subcomando rehash
, rbenv mantiene shims en ese directorio para que coincidan con cada comando de Ruby en cada versión instalada de Ruby en tu servidor. Siempre que instales una nueva versión de Ruby o una gema que proporcione comandos, como Rails, debes usar rehash
.
Para volver a generar el directorio de shims, ejecuta el siguiente comando:
- rbenv rehash
Verifica la instalación de Rails imprimiendo su versión con este comando:
- rails -v
Verás la versión de Rails que se instaló:
OutputRails 7.0.3.1
Con Rails instalado correctamente, puedes comenzar a probar tu instalación de Ruby on Rails y comenzar a desarrollar aplicaciones web. En el siguiente paso, aprenderás cómo actualizar y desinstalar rbenv y Ruby.
Paso 5 — Actualizar y Desinstalar rbenv y Ruby
Cuando mantienes proyectos, es útil saber cómo actualizar y desinstalar cuando sea necesario. En este paso, actualizarás rbenv y luego desinstalarás Ruby y rbenv de tu máquina.
Puedes actualizar rbenv y ruby-build usando Homebrew ejecutando el siguiente comando:
- brew upgrade rbenv ruby-build
Si rbenv o ruby-build necesitan actualizarse, Homebrew lo hará automáticamente por ti. Si tu configuración ya está actualizada, obtendrás una salida similar a la siguiente:
OutputWarning: rbenv 1.2.0 already installed
Warning: ruby-build 20220713 already installed
Esto asegurará que estemos utilizando la versión más actualizada de rbenv disponible.
Al descargar versiones adicionales de Ruby, es posible que acumules más versiones de las que desees en tu directorio ~/.rbenv/versions
. Con el subcomando uninstall
del complemento ruby-build, puedes eliminar estas versiones anteriores.
Por ejemplo, ejecuta lo siguiente para desinstalar la versión de Ruby 2.1.3:
- rbenv uninstall 2.1.3
Con el comando rbenv uninstall
, puedes limpiar versiones antiguas de Ruby para que no tengas más instaladas de las que estás utilizando actualmente.
Si has decidido que ya no quieres usar rbenv, puedes eliminarlo de tu sistema.
Para hacer esto, primero abre tu archivo ~/.bash_profile
en tu editor:
- nano ~/.bash_profile
Encuentra y elimina la siguiente línea del archivo para evitar que rbenv se inicie al abrir Terminal:
...
eval "$(rbenv init -)"
Una vez que hayas eliminado esta línea, guarda el archivo y sal del editor.
Ejecuta el siguiente comando para aplicar los cambios a tu shell:
- source ~/.bash_profile
A continuación, elimina rbenv y todas las versiones de Ruby instaladas con este comando:
- rm -rf `rbenv root`
Finalmente, elimina el paquete rbenv en sí mismo con Homebrew:
- brew uninstall rbenv
Verifica la versión de rbenv para asegurarte de que se haya desinstalado:
- rbenv -v
Obtendrás la siguiente salida:
Output-bash: /usr/local/bin/rbenv: No such file or directory
Esto significa que has eliminado correctamente rbenv de tu máquina.
Conclusión
En este tutorial, instalaste Ruby on Rails con rbenv en macOS. A partir de aquí, puedes aprender más sobre programación en Ruby con nuestra serie Cómo programar en Ruby. También puedes explorar cómo utilizar Ruby on Rails con PostgreSQL en lugar de su base de datos predeterminada sqlite3, que proporciona más escalabilidad, centralización y estabilidad para tus aplicaciones.
Source:
https://www.digitalocean.com/community/tutorials/how-to-install-ruby-on-rails-with-rbenv-on-macos