Ruby: Creazione di un Makefile per il deployment su Stackhero

Questa documentazione fa parte della guida Distribuire in produzione. Consulta la guida completa qui: Distribuisci codice Ruby in produzione in pochi minuti con Stackhero.

👋 Benvenuti nella documentazione di Stackhero!

Stackhero offre una soluzione Ruby cloud pronta all'uso che garantisce numerosi vantaggi, tra cui:

  • Distribuisca la sua applicazione in pochi secondi con un semplice git push.
  • Utilizzi il suo nome di dominio e benefici della configurazione automatica dei certificati HTTPS per una maggiore sicurezza.
  • Goda della tranquillità grazie a backup automatici, aggiornamenti con un clic e una tariffazione semplice, trasparente e prevedibile.
  • Ottenga prestazioni ottimali e sicurezza avanzata grazie a un'infrastruttura privata e dedicata.

Risparmi tempo e semplifichi la sua vita: bastano 5 minuti per provare la soluzione di Ruby cloud hosting di Stackhero!

Per indicare a Stackhero come eseguire la tua applicazione, aggiungi un file Makefile nella root del tuo progetto. Questo file definisce i comandi che Stackhero utilizzerà durante il deployment.

Se non hai mai usato Makefile o il comando make, i passaggi seguenti ti guideranno nella creazione di un Makefile funzionante.

Crea un file Makefile con il seguente contenuto:

run:
	rake assets:precompile
	rake db:migrate RAILS_ENV=production
	RAILS_ENV=production bundle exec puma -C config/puma.rb

Cosa fa questo Makefile:

  1. La regola run è obbligatoria. Stackhero cerca questa regola come punto di ingresso durante il deployment. Mantieni questo nome per la regola.
  2. L'esempio utilizza rake e bundle, ma puoi adattare questi comandi in base alla tua applicazione.
  3. Ogni riga di comando deve iniziare con un carattere di tabulazione, non con spazi. Se visualizzi un errore *** missing separator, controlla che ci siano le tabulazioni.

Nell'esempio sopra, il deployment eseguirà:

  1. La precompilazione degli asset come JavaScript e CSS nella cartella public/assets.
  2. Le migrazioni del database.
  3. L'avvio del server Puma per servire la tua applicazione.