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 met tal van voordelen, waaronder:

  • Deploy uw applicatie binnen enkele seconden met een eenvoudige git push.
  • Gebruik uw eigen domeinnaam en profiteer van de automatische configuratie van HTTPS certificaten voor extra beveiliging.
  • Geniet van gemoedsrust dankzij automatische back-ups, one-click updates en een eenvoudige, transparante en voorspelbare prijsstelling.
  • Optimale performance en sterke security dankzij een private, dedicated infrastructuur.

Bespaar tijd en maak uw leven eenvoudiger: het kost slechts 5 minuten om de Ruby cloud hosting oplossing van Stackhero uit 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 krijgt u:

  • Deploy uw code met een simpele git push.
  • Gebruik uw eigen domeinnaam, met automatische TLS-certificaat (HTTPS) beheer.
  • Draai uw applicatie op een dedicated, geïsoleerde infrastructuur 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.

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, met alle essentiële tools vooraf geïnstalleerd en geconfigureerd, zodat u direct kunt beginnen met coderen zonder installatiegedoe.

<!-- ![Voorbeeld van een Code-Hero-instantie die direct in de browser draait](/images/docs/ruby/040_deploy/rubyInCodeHero.png) -->

Het deployen van uw Ruby-applicatie naar Stackhero is eenvoudig. Dit zijn de stappen die u volgt, we lichten ze hieronder toe:

  1. Maak een Ruby-service aan op Stackhero.
  2. Voeg uw SSH-public key toe aan de configuratie van uw Ruby-service.
  3. Stel het git push-commando in op uw ontwikkelplatform.
  4. Voeg een Makefile toe aan uw project.
  5. 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.

Heeft u nog geen Stackhero for Ruby-service aangemaakt? Dit kan eenvoudig via uw Stackhero-dashboard in 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".

<!-- ![Voorbeeld van een Ruby-serviceconfiguratie](/images/docs/ruby/040_deploy/rubyStackheroPublicKey.png) -->

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.

Deployen naar Stackhero gebruikt de Git CLI en het git push-commando. U hoeft dus 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
<!-- ![Ruby Git remote-commando op het Stackhero-dashboard](/images/docs/ruby/040_deploy/rubyStackheroGitRemote.png) -->

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 de deployment zal uitvoeren.

Nog niet bekend met Makefiles of het make-commando? Geen zorgen, de onderstaande stappen begeleiden u er doorheen.

Maak een Makefile 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:

  1. De run-regel is verplicht; Stackhero voert deze automatisch uit tijdens de deployment. Houd deze naam aan, want dit is het entrypoint.
  2. De commando's gebruiken rake en bundle, maar u kunt ze aanpassen aan uw eigen applicatie.
  3. Zorg ervoor dat elke commandoregel begint met een tab, niet met spaties. Krijgt u een foutmelding als *** missing separator, controleer dan de opmaak.

In het bovenstaande voorbeeld zal de deployment:

  1. Assets zoals JavaScript en CSS precompileren in de map public/assets.
  2. Eventuele benodigde database-migraties uitvoeren.
  3. De Puma-server starten om uw applicatie te draaien.

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 de SSH-key fingerprint te bevestigen. Antwoord gewoon met "yes" om door te gaan.

Na een korte wachttijd is uw applicatie live.

<!-- ![Voorbeeld van Ruby-code deployen naar Stackhero met het `git push`-commando](/images/docs/ruby/040_deploy/rubyDeployGitPush.png) -->

U kunt uw gedeployde applicatie bezoeken via de website-URL die in uw Stackhero-dashboard wordt getoond. Dit ziet er meestal uit als https://<XXXXXX>.stackhero-network.com.

Gefeliciteerd. Uw applicatie draait nu in productie.

Problemen met deployen?

Bekijk zeker de sectie Troubleshooting voor snelle oplossingen.

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 environment variables 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.