Ruby: Deployen naar productie
Hoe u uw Ruby-code binnen enkele minuten naar productie kunt deployen
👋 Welkom bij de Stackhero-documentatie!
Stackhero biedt een kant-en-klare Ruby cloud oplossing die tal van voordelen biedt, waaronder:
- Implementeer uw applicatie in seconden met een eenvoudige
git push.- Gebruik uw eigen domeinnaam en profiteer van de automatische configuratie van HTTPS-certificaten voor verbeterde beveiliging.
- Geniet van gemoedsrust met automatische back-ups, updates met één klik, en eenvoudige, transparante en voorspelbare prijzen.
- Krijg optimale prestaties en robuuste beveiliging dankzij een privé en dedicated VM.
Bespaar tijd en vereenvoudig uw leven: het kost slechts 5 minuten om de Ruby cloud hosting oplossing van Stackhero te proberen!
De Stackhero Ruby cloud hosting service maakt het eenvoudig om uw Ruby-projecten binnen enkele minuten naar productie te deployen. U profiteert van een krachtig platform gecombineerd met een intuïtieve gebruikerservaring.
Dit is wat u krijgt:
- Deploy uw code met een simpele
git push. - Gebruik uw eigen domeinnaam, met automatische TLS-certificaat (HTTPS) beheer.
- Draai uw applicatie op een dedicated, private VM voor maximale beveiliging en privacy.
- Profiteer van ondersteuning voor HTTP/2, TLS 1.3 (HTTPS), WebSockets, GZIP- en Brotli-compressie, ETag, toegang tot TCP- en UDP-poorten, en meer.
Vereisten
Het enige wat u nodig heeft om te starten met deployen op Stackhero is Git geïnstalleerd op uw computer.
<!--  -->Wilt u tijd besparen of liever geen complexe lokale omgeving opzetten? Kijk dan eens naar Stackhero's Code-Hero.
Code-Hero is een kant-en-klare ontwikkelomgeving die u direct vanuit uw browser kunt gebruiken, op elke computer, tablet of telefoon. Gebaseerd op een fork van VSCode, bevat het alle essentiële tools vooraf geïnstalleerd en geconfigureerd, zodat u direct kunt beginnen met coderen zonder installatiegedoe.
Stappen om te deployen naar Stackhero
Het deployen van uw Ruby-applicatie naar Stackhero is een eenvoudig proces. Dit zijn de stappen die u volgt, en we lichten ze hieronder toe:
- Maak een Ruby-service aan op Stackhero.
- Voeg uw SSH-public key toe aan de configuratie van uw Ruby-service.
- Stel het
git push-commando in op uw ontwikkelplatform. - Voeg een Makefile toe aan uw project.
- Deploy uw code naar productie.
Komt u problemen tegen tijdens het deployen? De Troubleshooting documentatie helpt u snel een oplossing te vinden. Het is altijd verstandig daar eerst te kijken om tijd en frustratie te besparen.
Uw Stackhero for Ruby-service configureren
Heeft u nog geen Stackhero for Ruby-service aangemaakt? Dit kan eenvoudig via uw Stackhero-dashboard in slechts een paar minuten.
Zodra uw Ruby-service draait, is de volgende stap het toevoegen van uw SSH-public key. U vindt uw public key door het volgende commando uit te voeren:
cat ~/.ssh/id_*.pub
Nog geen SSH-sleutels?
U kunt ze genereren met:
ssh-keygen -t ed25519
Om uw SSH-sleutel toe te voegen, gaat u naar uw Stackhero-dashboard, selecteert u uw Ruby-service, klikt u op "Configure", en plakt u uw public key in het veld "SSH public keys".
<!--  -->Tip: Wilt u in de toekomst tijd besparen? Voeg uw SSH-public key toe aan uw profiel, zodat deze automatisch wordt toegevoegd aan nieuwe services die u aanmaakt.
Klik hiervoor op uw profielfoto rechtsboven in het dashboard, kies "Your profile" en voeg daar uw SSH-public key toe.
Het git push-commando instellen voor deployment
Deployen naar Stackhero gebruikt de Git CLI en het git push-commando, dus u hoeft geen extra tools te installeren.
U kunt het git remote-commando kopiëren vanaf de hoofdpagina van uw service in het Stackhero-dashboard. Dit ziet er meestal zo uit:
git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git
Een Makefile aanmaken voor Stackhero-deployment
Om Stackhero te laten weten hoe uw applicatie gestart moet worden, maakt u een Makefile aan in de root van uw project. Dit bestand definieert de commando's die Stackhero tijdens het deployen gebruikt.
Bent u nieuw met Makefiles of het
make-commando? Geen zorgen, de onderstaande stappen begeleiden u er doorheen.
Maak een Makefile aan met de volgende inhoud:
run:
rake assets:precompile
rake db:migrate RAILS_ENV=production
RAILS_ENV=production bundle exec puma -C config/puma.rb
Dit gebeurt er in deze Makefile:
- De
run-regel is verplicht; Stackhero voert deze automatisch uit tijdens het deployen. Houd deze naam aan, want dit is het entrypoint. - De commando's gebruiken
rakeenbundle, maar u kunt deze aanpassen aan de behoeften van uw applicatie. - Zorg ervoor dat elke commandoregel begint met een tab, niet met spaties. Als u een foutmelding als
*** missing separatorziet, controleer dan de opmaak.
In het bovenstaande voorbeeld zal de deployment:
- Assets zoals JavaScript en CSS precompileren naar de map
public/assets. - Eventuele benodigde database-migraties uitvoeren.
- De Puma-server starten om uw applicatie te draaien.
Uw Ruby-applicatie deployen
U bent klaar om te starten. Om uw code naar Stackhero te deployen, gebruikt u:
git push stackhero main
De eerste keer dat u dit uitvoert, wordt u gevraagd om de SSH key fingerprint te bevestigen. Antwoord gewoon met "yes" om door te gaan.
Na een korte wachttijd is uw applicatie live.
<!--  -->U kunt uw gedeployde applicatie bezoeken via de website-URL die in uw Stackhero-dashboard wordt weergegeven. Dit ziet er meestal uit als https://<XXXXXX>.stackhero-network.com.
Gefeliciteerd. Uw applicatie draait nu in productie.
Problemen met deployen?
Bekijk zeker de Troubleshooting sectie voor snelle oplossingen.
Conclusie
U heeft zojuist geleerd hoe u Ruby-code naar productie kunt deployen met Stackhero, via een proces dat zowel eenvoudig als krachtig is.
Wilt u meer weten? De documentatie Advanced Deployment Usages behandelt onderwerpen zoals het deployen van verschillende git-branches, specifieke tags of commits, en het beheren van meerdere omgevingen zoals staging en productie. U vindt er ook tips voor het werken met omgevingsvariabelen en meer.
En onthoud: als u problemen ondervindt tijdens het deployen, is de Troubleshooting documentatie een uitstekende bron om ze efficiënt op te lossen en uw workflow soepel te houden.