Ruby: Creazione di un Makefile per la distribuzione su Stackhero

Questa documentazione fa parte della guida Deploy in produzione. Consulta la guida completa qui: Come distribuire il tuo codice Ruby in produzione in pochi minuti.

👋 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, devi creare un file Makefile nella root del tuo progetto. Questo file definisce i comandi che Stackhero utilizzerà durante la distribuzione.

Non hai mai usato Makefile o il comando make? Nessun problema, i passaggi qui sotto ti guideranno passo dopo passo.

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

Ecco cosa succede in questo Makefile:

  1. La regola run è obbligatoria: Stackhero la eseguirà automaticamente durante la distribuzione. Mantieni questo nome, perché funge da entry point.
  2. I comandi utilizzano rake e bundle, ma puoi personalizzarli in base alle esigenze della tua applicazione.
  3. Assicurati che ogni riga di comando inizi con un carattere di tabulazione, non con spazi. Se ricevi un errore come *** missing separator, controlla questo aspetto.

Nell'esempio sopra, la distribuzione eseguirà:

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