En esta guía, te acompañaremos a través del proceso de instalación y configuración de una aplicación inicial Ruby on Rails versión 7.1 para ser desplegada y alojada en Kinsta. Tanto si eres un principiante como un desarrollador experimentado de Ruby on Rails, este tutorial paso a paso te ayudará a empezar a desplegar tu aplicación en Kinsta.
Requisitos Previos
Antes de sumergirte en esta guía, asumimos que tienes conocimientos básicos de Git y Ruby on Rails, incluyendo la instalación de Ruby, Rails y las dependencias necesarias en tu máquina de desarrollo local.
Paso 1: Configurar una Cuenta de Alojamiento Kinsta
Visita el sitio web de Kinsta y crea una nueva cuenta si aún no tienes una. Configura tu nombre de dominio o utiliza una URL Kinsta asignada que se proporciona al desplegar.
Paso 2: Crear una Nueva Aplicación Ruby on Rails
Abre tu terminal y navega hasta el directorio donde quieras crear tu nueva aplicación Rails. Ejecuta el siguiente comando para crearla:
rails new myapp --database=postgresql --javascript=esbuild --css=tailwind
Este comando crea una nueva aplicación Rails llamada myapp
con PostgreSQL como adaptador de base de datos, esbuild
para compilar nuestro Javascript, y framework Tailwind CSS
.
Siéntete libre de sustituir myapp
por el nombre de aplicación que desees.
Para obtener una lista completa de las opciones disponibles para configurar desde el comando rails new
, ejecútala:
rails new --help
Paso 3: Configura tu Aplicación Rails
Cambia al directorio de la aplicación:
cd myapp
Asegúrate de que, al empaquetar tu aplicación Rails, la configuración también añade la plataforma Linux, ya que éste es el sistema operativo utilizado para el despliegue. Introduce el siguiente comando en el terminal:
bundle lock --add-platform x86_64-linux
Script del Proceso Web
Añade un archivo start.sh al directorio bin de la aplicación. Esto garantiza que el servidor inicie tu aplicación y ejecute los comandos necesarios para arrancar y actualizar la base de datos antes de ejecutarla. En tu terminal, crea el archivo introduciendo:
touch bin/start.sh
Dentro de este archivo añade lo siguiente:
#!/bin/bash
bundle exec rails db:prepare
bundle exec rails server
Muéstrame el Inicio
Y para darnos un Hello World, crea una página Home
para la aplicación. En tu terminal, introduce
bin/rails generate controller Home index
Esto dará como resultado:
create app/controllers/home_controller.rb
route get 'home/index'
invoke erb
create app/views/home
create app/views/home/index.html.erb
invoke test_unit
create test/controllers/home_controller_test.rb
invoke helper
create app/helpers/home_helper.rb
invoke test_unit
Abre app/views/home/index.html.erb, y sustituye su contenido por:
<h1>Hello, Kinsta!</h1>
Configurar la Página de Inicio de la Aplicación
Abre config/routes.rb, y añade la siguiente ruta root a la parte superior del bloque Rails.application.routes.draw:
Rails.application.routes.draw do
root "home#index"
get "/home", to: "home#index"
end
Ahora, cuando ejecutemos nuestra aplicación localmente, veremos nuestra nueva página de inicio. Como hemos generado nuestra nueva aplicación añadiendo esbuild
, tenemos un comando simplificado para ayudarnos a arrancar nuestra aplicación. Ejecutando el siguiente comando, Rails arranca el servidor y vigila los cambios tanto en CSS como en Javascript con la recarga en tiempo real:
bin/dev
Crear una Base de Datos
Como hemos creado nuestra aplicación Rails con una base de datos PostgreSQL, necesitamos configurarla a través del Panel de Control de MyKinsta:
- Accede a tu cuenta de Kinsta.com, y desde tu Panel de Control, haz clic en Añadir servicios y selecciona Base de datos.
- Rellena los datos básicos y confírmalos en la página Resumen haciendo clic en Crear base de datos.
Paso 4: Prepárate para el Despliegue
Empieza creando un nuevo repositorio en GitHub para alojar tu código base.
Inicializa un repositorio Git localmente en el directorio de tu aplicación Rails en el nivel root:
git init
Crea un archivo .gitignore en el directorio root de tu aplicación y excluye los archivos y directorios innecesarios del control de versiones. Puedes encontrar un ejemplo de archivo .gitignore para una aplicación Rails en la página oficial de GitHub.
Para conectar tu repositorio local al repositorio que has creado en GitHub, añade el origen remoto a tu repositorio local, sustituyendo username
y repository
por los tuyos:
git remote add origin https://github.com/username/repository.git
Añade, confirma y envía tu código al repositorio Git:
git add .
git commit -m "Initial commit"
git push
Ten en cuenta que, como hemos configurado Kinsta para que se despliegue automáticamente con cada envío al repositorio, nuestra primera construcción falla. Esto ocurre porque aún no hemos conectado la base de datos a la aplicación, lo que haremos en el siguiente paso.
Paso 5: Despliega en Kinsta.com
- Accede a tu cuenta de Kinsta.com.
- En tu Panel de Control, haz clic en Añadir servicios y selecciona Aplicación.
- Conéctate a un proveedor Git.
Configura los Detalles de tu Aplicación
- Añade el repositorio y selecciona la rama por defecto.
- (Opcional) Elige Despliegues automáticos para esta rama por defecto.
- Añade el nombre de la aplicación. Se utilizará para identificar la aplicación en tu Panel de Control.
- Elige la ubicación del centro de datos. Opta por la ubicación más cercana a tu público.
Puedes añadir variables de entorno en esta fase (ejemplos). Tu aplicación Rails recién generada viene con una llave maestra que descifra y lee los secretos en el archivo de credenciales de la carpeta config. Nunca guardes tu llave maestra en el control de versiones (ya está en el archivo .gitignore).
Para permitir el descifrado, tienes que configurar las variables utilizando una clave especial. Despliega Variables de entorno, copia el valor de tu archivo de clave maestra local y pégalo en la entrada Valor 1 de la variable RAILS_MASTER_KEY
:
Configura tu Entorno de Construcción
- Elige tus Recursos de construcción.
- Para aplicaciones Rails, selecciona Usar Buildpacks.
- Haz clic en Continuar.
Configura los Recursos de tu Aplicación
- Deja vacío el campo Comando de inicio, ya que se define a través del comando del archivo creado en nuestros pasos anteriores bin/start.sh.
- Haz clic en Continuar.
Crear la Base de Datos de tus Aplicaciones
Necesitamos realizar la configuración final de la conexión para la base de datos.
- En el menú de la izquierda del Panel de Control de MyKinsta, haz clic en Bases de datos y haz clic en el nombre de la base de datos recién creada.
- Bajo el título Información, verás un subtítulo Conexiones internas, y haz clic en Añadir aplicación.
- En el menú desplegable, selecciona tu aplicación Rails.
- Marca la casilla Añadir variables de entorno a la aplicación.
- Haz clic en Añadir conexión.
Configura tu Base de Datos Local
Abre el archivo config/database.yml y actualiza la configuración de la base de datos según las credenciales de tu base de datos de MyKinsta.
Ejemplo:
production:
adapter: postgresql
encoding: unicode
pool: 5
database: <%= ENV["DB_NAME"] %>
host: <%= ENV["DB_HOST"] %>
username: <%= ENV["DB_USER"] %>
password: <%= ENV["DB_PASSWORD"] %>
Encuentra más información sobre cómo gestionar las conexiones a Bases de Datos en nuestra documentación sobre Configuración.
Confirma tu configuración e introduce los datos de pago para finalizar la configuración de la aplicación y Kinsta la desplegará en unos minutos.
Resumen
Siguiendo esta guía, has configurado con éxito tu aplicación Ruby on Rails versión 7.1 con una Base de Datos PostgreSQL para desplegarla y alojarla en Kinsta.
Ahora puedes centrarte en el desarrollo de tu aplicación y utilizar las potentes funciones proporcionadas por Kinsta para un despliegue y alojamiento sin problemas. Recuerda consultar la documentación oficial o buscar más ayuda del soporte de Kinsta siempre que sea necesario.
Deja una respuesta