Guías de Make it Real
  • Introduction
  • Preparación
    • Conceptos básicos
    • El editor de texto
    • La línea de comandos
    • Git y Github
  • Git
    • Instalación y configuración
    • Conceptos y comandos esenciales
    • Ignorando archivos y carpetas
    • Trabajando con ramas
    • Repositorios remotos
    • Etiquetas
    • Reescribiendo la historia
    • Stashing
    • Github
  • HTML y CSS
    • Introducción a HTML
    • Introducción a CSS
    • Más elementos de HTML
    • Tablas
    • Formularios
    • El modelo de caja en CSS
    • Fondos (backgrounds)
    • Posicionamiento
    • Selectores CSS
    • Bordes, sombras y gradientes
    • Media Queries
    • Unidades en CSS
    • Flexbox
  • Bootstrap 3
    • Primeros pasos
    • Elementos básicos de HTML
    • Componentes
    • La grilla
    • Personalizando Bootstrap
    • Utilizando plantillas
  • Bootstrap 4
    • Primeros pasos
    • Elementos básicos de HTML
    • Componentes
    • La grilla
    • Clases utilitarias
    • Personalizando Bootstrap
  • Ruby
    • Primeros pasos
    • Tipos y operadores
    • Variables y entrada de usuario
    • Condicionales
    • Ciclos
    • Arreglos
    • Más cadenas de texto
    • Hashes
    • Métodos
    • Manipulación de archivos
    • Gemas
  • Programación Orientada a Objetos en Ruby
    • Clases y objetos
    • Métodos y atributos de clase
    • Herencia
    • Módulos
    • Excepciones
  • JavaScript I
    • Primeros pasos
    • Tipos y operadores
    • Variables
    • Condicionales
    • Ciclos
    • Arreglos
    • Más cadenas de texto
    • Funciones
    • Objetos literales
    • Manipulación de archivos
  • JavaScript en el navegador
    • Primeros pasos
    • Manipulando HTML
    • Escuchando eventos
    • Local Storage
    • History API
    • Canvas
    • Notificaciones Web
    • Audio y Video
    • Arrastrar y soltar
    • JSON
    • Realizando peticiones HTTP
  • jQuery
    • Primeros pasos
    • Manipulando HTML
    • Escuchando eventos
    • Plugins
    • Realizando peticiones con AJAX
  • JavaScript II
    • Prototipos
    • Librerías (Node.js)
    • ES6
    • Uso de this (call, apply, bind)
    • Programación funcional
    • Scope, hoisting, closures
    • Programación asincrónica
    • Testing
  • HTTP y Sinatra
    • Primeros pasos con Sinatra
    • El protocolo HTTP
    • Rutas
    • Formularios
    • Cookies y sesión
  • Bases de datos
    • Bases de datos relacionales
    • SQL
    • DDL
    • MongoDB
  • Ruby on Rails I
    • Primeros pasos
    • Arquitectura
    • Rutas
    • Layouts y rendering
    • ActiveRecord - Modelos
    • ActiveRecord - Migraciones
    • ActiveRecord - Validaciones
    • ActiveRecord - Asociaciones
    • ActiveRecord - Scopes
    • ActiveRecord - Callbacks
    • Recursos REST
    • Formularios
    • Autenticación con Devise
    • Sass y Bootstrap
    • Envío de correos
    • Carga de imágenes
    • Seeds
    • Heroku
  • Ruby on Rails II
    • Usando JavaScript (y jQuery) en Rails
    • Testing en Ruby
    • Testing en Rails
    • Creando una Web API
    • Web Sockets
  • Express.js
    • Primeros Pasos
    • El protocolo HTTP
    • Rutas
    • Vistas
    • Middlewares y manejo de errores
    • Formularios
    • Cookies y sesión
  • Express.js II
    • Mongoose
    • Web Sockets
    • Autenticación
    • Envío de correos
    • Cargar imágenes
    • Deployment
    • Testing
    • Creando una Web API
  • React
    • Primeros pasos
    • JSX
    • Componentes
    • Más sobre estado
    • Formularios
    • Peticiones HTTP con Axios
    • React Hooks
    • React Context
    • React Bootstrap
    • React Router
    • Carga de Imágenes
    • Testing
    • Estructura de carpetas
    • Componentes de clase
  • Redux
    • Primeros pasos
    • Action creators
    • Usando la librería react-redux
    • Middlewares
    • Operaciones asincrónicas con redux-thunk
    • Combinando funciones reductoras
    • Testing
    • Redux Tool Kit
  • Algoritmos
    • Describiendo un algoritmo
    • Complejidad (Big-O)
    • Estructuras de datos
    • Recursión
    • Ordenamiento
    • Búsqueda
    • Programación dinámica
  • Python
    • Primeros Pasos
    • Tipos y Variables
    • Funciones
    • Control de Flujo
    • Listas
    • Ciclos
    • Diccionarios, Tuplas y Sets
  • NumPy
    • Primeros Pasos
    • Arreglos
    • Arreglos Multidimensionales
    • Estadística con NumPy
    • Distribución Estadística
  • Pandas
    • Primeros Pasos
    • Inspección y Selección de Datos
    • Modificando Dataframes
    • La Función Lambda
    • Aggregates en Pandas
    • Múltiples Tablas
Powered by GitBook
On this page
  • Preparando la aplicación
  • Desplegando la aplicación
  1. Ruby on Rails I

Heroku

PreviousSeedsNextRuby on Rails II

Last updated 2 years ago

es un servicio que nos permite publicar nuestras aplicaciones en Internet sin necesidad de preocuparnos por configurar servidores, instalar Ruby on Rails, configurar la base de datos, etc.

tiene un plan gratuito que, aunque tiene algunas limitaciones, es más que suficiente para empezar. También existen planes pagos para aplicaciones en producción que necesiten más procesamiento y/o memoria; puedes consultar los precios en .

Si aún no tienes una cuenta en , ingresa a la y crea una.

## Heroku CLI

Una vez que tengas una cuenta en debes descargar el , una aplicación para la línea de comandos que te permitirá interactuar con . En encontrarás las instrucciones para descargarla e instalarla.

Una vez que la hayas instalado verifica la instalación ejecutando el siguiente comando:

$ heroku --version

Deberías ver heroku/x.y.z en el resultado.

Por último ejecuta el siguiente comando para autenticarte:

$ heroku login

Ingresa el email y contraseña que utilizaste para crear tu cuenta en Heroku.

Preparando la aplicación

Si creaste la aplicación sin especificar --database=postgresql vas a tener que agregar la gema pg a tu proyecto de Rails. Edita tu Gemfile y cambia la siguiente línea:

gem 'sqlite'

Por esta otra:

gem 'pg'

Nota: Es recomendable también utilizar PostgreSQL en desarrollo para evitar errores que puedan surgir en producción por la diferencia en la base de datos. Sin embargo, si quieres seguir utilizando SQLite en desarrollo agrega la gema pg al grupo production y la gema sqlite al grupo development y test:

group :development, :test do
  gem 'sqlite'
end

group :production do
  gem 'pg'
end

Reinstala las dependencias ejecutando:

$ bundle install

Por último haz commit ejecutando los siguientes comandos:

$ git add .
$ git commit -m 'Prepare app for Heroku deployment'

Desplegando la aplicación

Para desplegar la aplicación primero debes crear la aplicación en Heroku ejecutando el siguiente comando:

$ heroku create

Y desplegarla con el siguiente comando:

$ git push heroku master

Este proceso toma algún tiempo, pero lo importante es que al final salga algo parecido a lo siguiente:

remote: Verifying deploy... done.
To https://git.heroku.com/un-nombre-extrano.git
 * [new branch]      master -> master

Corre las migraciones con el siguiente comando:

$ heroku run rails db:migrate

Y reinicia la aplicación con este comando:

$ heroku restart

Por último ejecuta el siguiente comando para visitar tu aplicación:

$ heroku open
Heroku
Heroku
esta página
Heroku
página principal
Heroku
Heroku CLI
Heroku
este enlace