Ruby: Distribuire in produzione
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!
Il servizio di cloud hosting Ruby di Stackhero rende semplice mettere online i tuoi progetti Ruby in pochi minuti. Avrai a disposizione una piattaforma solida, progettata per semplificare il deployment e permetterti di concentrarti sulla tua applicazione, non sull'infrastruttura.
Ecco cosa ottieni:
- Distribuisci il tuo codice con un semplice
git push. - Usa il tuo dominio personalizzato, con gestione automatica del certificato TLS (HTTPS).
- Esegui la tua applicazione su un'infrastruttura dedicata e isolata, per garantire sicurezza e privacy elevate.
- Approfitta di HTTP/2, TLS 1.3 (HTTPS), WebSockets, compressione GZIP e Brotli, supporto ETag, accesso alle porte TCP e UDP, e molto altro.
Prerequisiti
Per iniziare ti basta avere Git installato sul tuo computer.
<!--  -->Se vuoi risparmiare tempo o preferisci evitare la configurazione di un ambiente locale, puoi valutare Code-Hero di Stackhero.
Code-Hero è un ambiente di sviluppo accessibile direttamente dal browser, compatibile con qualsiasi dispositivo. Basato su un fork di VSCode, include già gli strumenti principali preinstallati e preconfigurati, così puoi iniziare a programmare subito senza alcuna configurazione.
Passaggi per distribuire su Stackhero
Distribuire la tua applicazione Ruby su Stackhero è semplice. Ecco il flusso di lavoro, con ogni passaggio spiegato di seguito:
- Crea un servizio Ruby su Stackhero.
- Aggiungi la tua chiave pubblica SSH alla configurazione del servizio Ruby.
- Configura il comando
git pushsulla tua piattaforma di sviluppo. - Aggiungi un Makefile al tuo progetto.
- Distribuisci il tuo codice in produzione.
Se incontri problemi durante il deployment, la documentazione Troubleshooting ti aiuta a trovare rapidamente soluzioni e a proseguire senza interruzioni.
Configurazione del servizio Ruby
Se non hai ancora creato un servizio Stackhero for Ruby, puoi farlo dalla tua dashboard Stackhero in pochi minuti.
Una volta che il servizio Ruby è attivo, il passo successivo è aggiungere la tua chiave pubblica SSH. Puoi visualizzare la tua chiave pubblica eseguendo:
cat ~/.ssh/id_*.pub
Non hai ancora una chiave SSH?
Puoi generarne una con:
ssh-keygen -t ed25519
Per aggiungere la tua chiave SSH, vai sulla dashboard Stackhero, seleziona il tuo servizio Ruby, clicca su "Configura" e incolla la tua chiave pubblica nella sezione "Chiavi pubbliche SSH".
<!--  -->Suggerimento: per risparmiare tempo in futuro, puoi aggiungere la tua chiave pubblica SSH al tuo profilo Stackhero. I nuovi servizi che creerai la includeranno automaticamente.
Clicca sulla tua foto profilo in alto a destra nella dashboard, seleziona "Il tuo profilo" e aggiungi la tua chiave pubblica SSH.
Configurazione del comando git push per il deployment
La distribuzione su Stackhero utilizza la CLI di Git e il comando git push, quindi non sono necessari strumenti aggiuntivi.
Puoi copiare il comando git remote dalla pagina principale del tuo servizio nella dashboard Stackhero. Di solito appare così:
git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git
Creazione di un Makefile per il deployment su 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:
- La regola
runè obbligatoria. Stackhero cerca questa regola come punto di ingresso durante il deployment. Mantieni questo nome per la regola. - L'esempio utilizza
rakeebundle, ma puoi adattare questi comandi in base alla tua applicazione. - 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à:
- La precompilazione degli asset come JavaScript e CSS nella cartella
public/assets. - Le migrazioni del database.
- L'avvio del server Puma per servire la tua applicazione.
Distribuire la tua applicazione Ruby
Ora sei pronto per distribuire. Puoi usare:
git push stackhero main
Durante il primo deployment, Git ti chiederà di confermare l'impronta digitale della chiave SSH. Inserisci "yes" per continuare.
Dopo pochi istanti, la tua applicazione sarà online.
<!--  -->Accedi alla tua applicazione distribuita tramite l'URL indicato nella dashboard Stackhero. L'indirizzo sarà simile a https://<XXXXXX>.stackhero-network.com.
La tua applicazione è ora attiva in produzione.
Se riscontri problemi durante il deployment, la sezione Troubleshooting copre i problemi più comuni e le relative soluzioni.
Conclusione
Hai visto come distribuire codice Ruby in produzione utilizzando Stackhero, con un processo pensato per essere potente e semplice allo stesso tempo.
Per argomenti avanzati, come la distribuzione di diversi branch, tag o commit Git, e la gestione di più ambienti come staging e produzione, consulta la documentazione Advanced Deployment Usages. Troverai anche suggerimenti sull'utilizzo delle variabili d'ambiente e altre funzionalità utili.
Se dovessero sorgere domande o problemi, la documentazione Troubleshooting è sempre disponibile per aiutarti a mantenere il tuo workflow di deployment fluido ed efficiente.