usuario remoto

Iniciar aplicación ruby on rails, automaticamente al iniciar el S.O.

Comparto este tutorial, muy util para automatizar el inicio automatico de nuestra aplicación de rails, ideal para cuando el servidor se reinicia.

Paso 1: Crear el Script de Inicio

Primero, asegúrate de tener un script que se encargue de iniciar tu aplicación de Rails.

Vamos a suponer que tu aplicación está ubicada en /home/myapp y que usas asdf para manejar Ruby.

crear el archivo /home/app/start.sh

#!/bin/bash
cd /home/insights_tecnm
rm /home/myapp/tmp/pids/production.pid
source /home/myapp/.asdf/asdf.sh
bundle exec rails server -e production -p 3000 --pid /home/myapp/tmp/pids/production.pid

Haz que el script sea ejecutable:

chmod +x /home/myapp/start.sh

Crear un archivo en: /etc/systemd/system/myapp.service

[Unit]
Description=My Rails App
After=network.target

[Service]
Type=simple
User=tu_usuario
WorkingDirectory=/home/myapp/
ExecStart=/home/myapp/start.sh
Restart=on-failure

[Install]
WantedBy=multi-user.target

Paso 3: Habilitar y Iniciar el Servicio

Después de crear el archivo del servicio, necesitas habilitarlo para que se ejecute al iniciar el sistema y luego iniciarlo manualmente por primera vez.

Recarga los archivos de servicio para asegurarte de que systemd reconozca tu nuevo servicio:

sudo systemctl daemon-reload

Habilita el servicio para que se inicie al arrancar el sistema:

sudo systemctl enable myapp.service

Inicia el servicio manualmente:

sudo systemctl start myapp.service

Paso 4: Verificar el Estado del Servicio

Para asegurarte de que tu aplicación de Rails está corriendo y para verificar cualquier problema potencial, puedes revisar el estado del servicio:

sudo systemctl status myapp.service

Reinicia tu servidor, y si tu aplicación incio, felicidades lo logramos!!

Leave a Reply

Your email address will not be published. Required fields are marked *