Ruby: Diegimas į produkciją
Kaip per kelias minutes įdiegti savo Ruby kodą į produkcinę aplinką
👋 Sveiki atvykę į Stackhero dokumentaciją!
Stackhero siūlo paruoštą naudoti Ruby cloud sprendimą, kuris suteikia daugybę privalumų, įskaitant:
- Diekite savo aplikaciją per kelias sekundes naudodami paprastą
git push.- Naudokite savo domeno vardą ir pasinaudokite automatiniu HTTPS sertifikatų konfigūravimu didesniam saugumui.
- Būkite ramūs dėl automatinių atsarginių kopijų, atnaujinimų vienu paspaudimu ir aiškios, skaidrios bei prognozuojamos kainodaros.
- Pasiekite optimalią veikimo spartą ir tvirtą saugumą dėl privačios, dedikuotos infrastruktūros.
Taupykite laiką ir supaprastinkite savo darbą: išbandyti Stackhero Ruby cloud hosting sprendimą užtruks tik 5 minutes!
Stackhero Ruby debesų talpinimo paslauga leidžia lengvai įdiegti jūsų Ruby projektus į produkcinę aplinką vos per kelias minutes, derinant galingą platformą su intuityvia naudotojo patirtimi.
Štai ką gaunate:
- Diekite savo kodą paprastu
git pushveiksmu. - Naudokite savo pasirinktą domeną su automatiniu TLS sertifikato (HTTPS) valdymu.
- Paleiskite savo aplikaciją dedikuotoje, izoliuotoje infrastruktūroje, užtikrinančioje aukščiausio lygio saugumą ir privatumą.
- Pasinaudokite HTTP/2, TLS 1.3 (HTTPS), WebSockets, GZIP ir Brotli suspaudimo, ETag, TCP ir UDP prievadų prieigos bei kitų funkcijų palaikymu.
Būtinos sąlygos
Vienintelis dalykas, kurio reikia norint pradėti diegti projektus Stackhero platformoje, yra jūsų kompiuteryje įdiegtas Git.
<!--  -->Jei norite sutaupyti laiko arba nenorite konfigūruoti sudėtingos vietinės aplinkos, rekomenduojame išbandyti Stackhero Code-Hero.
Code-Hero – tai paruošta naudoti vystymo platforma, prieinama tiesiai iš jūsų naršyklės, bet kuriame kompiuteryje, planšetėje ar telefone. Ji sukurta remiantis VSCode fork'u ir turi visus būtinus įrankius jau įdiegtus ir sukonfigūruotus, tad galite pradėti programuoti iš karto, be jokio papildomo pasiruošimo.
Diegimo į Stackhero žingsniai
Ruby aplikacijos diegimas į Stackhero yra paprastas procesas. Štai kokius žingsnius atliksite – kiekvieną jų aptarsime detaliau:
- Sukurkite Ruby paslaugą Stackhero platformoje.
- Pridėkite savo SSH viešąjį raktą prie Ruby paslaugos konfigūracijos.
- Paruoškite
git pushkomandą savo vystymo aplinkoje. - Pridėkite Makefile prie savo projekto.
- Įdiekite savo kodą į produkciją.
Jei diegimo metu iškyla problemų, Trikčių šalinimo dokumentacija padės greitai rasti sprendimą. Visada verta pirmiausia ten pasitikrinti, kad sutaupytumėte laiko ir išvengtumėte nereikalingo streso.
Stackhero for Ruby paslaugos konfigūravimas
Jei dar nesukūrėte Stackhero for Ruby paslaugos, tai galite padaryti savo Stackhero valdymo skydelyje per kelias minutes.
Kai jūsų Ruby paslauga jau veikia, kitas žingsnis – pridėti savo SSH viešąjį raktą. Viešąjį raktą galite rasti įvykdę:
cat ~/.ssh/id_*.pub
Neturite SSH raktų?
Galite juos sugeneruoti su:
ssh-keygen -t ed25519
Norėdami pridėti SSH raktą, eikite į Stackhero valdymo skydelį, pasirinkite savo Ruby paslaugą, spauskite "Configure" ir įklijuokite viešąjį raktą į "SSH public keys" sekciją.
<!--  -->Patarimas: Norite ateityje sutaupyti laiko? Pridėkite savo SSH viešąjį raktą prie profilio – tuomet jis bus automatiškai įtrauktas kuriant naujas paslaugas.
Tiesiog spustelėkite savo profilio nuotrauką viršutiniame dešiniajame valdymo skydelio kampe, pasirinkite "Your profile" ir pridėkite SSH viešąjį raktą ten.
git push komandos paruošimas diegimui
Diegimui į Stackhero naudojamas Git CLI ir git push komanda, todėl nereikia diegti jokių papildomų įrankių.
git remote komandą galite nukopijuoti iš savo paslaugos pagrindinio puslapio Stackhero valdymo skydelyje. Ji dažniausiai atrodo taip:
git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git
Makefile sukūrimas Stackhero diegimui
Kad Stackhero žinotų, kaip paleisti jūsų aplikaciją, projekto šaknyje sukurkite Makefile. Šiame faile aprašomos komandos, kurias Stackhero vykdys diegimo metu.
Jei dar nesate susipažinę su Makefile ar
makekomanda, nesijaudinkite – žemiau pateikti žingsniai padės viską suprasti.
Sukurkite Makefile su šiuo turiniu:
run:
rake assets:precompile
rake db:migrate RAILS_ENV=production
RAILS_ENV=production bundle exec puma -C config/puma.rb
Štai kas vyksta šiame Makefile:
runtaisyklė yra privaloma – Stackhero ją automatiškai vykdys diegimo metu. Palikite šį pavadinimą, nes tai yra įėjimo taškas.- Komandose naudojami
rakeirbundle, tačiau galite jas pritaikyti pagal savo aplikacijos poreikius. - Įsitikinkite, kad kiekviena komandos eilutė prasideda tabuliacijos simboliu, o ne tarpais. Jei matote klaidą kaip
*** missing separator, patikrinkite šį formatavimą.
Aukščiau pateiktame pavyzdyje diegimas atliks šiuos veiksmus:
- Prekompiliuos JavaScript ir CSS resursus į
public/assetskatalogą. - Paleis visas reikalingas duomenų bazės migracijas.
- Paleis Puma serverį, kuris aptarnaus jūsų aplikaciją.
Ruby aplikacijos diegimas
Viskas paruošta. Norėdami įdiegti savo kodą į Stackhero, naudokite:
git push stackhero main
Pirmą kartą vykdant šią komandą, būsite paprašyti patvirtinti SSH rakto piršto atspaudą. Tiesiog atsakykite "yes", kad tęstumėte.
Po trumpos pauzės jūsų aplikacija bus pasiekiama internete.
<!--  -->Savo įdiegtą aplikaciją galite pasiekti Stackhero valdymo skydelyje nurodytu svetainės adresu. Paprastai jis atrodo taip: https://<XXXXXX>.stackhero-network.com.
Sveikiname. Jūsų aplikacija jau veikia produkcinėje aplinkoje.
Kyla problemų diegiant?
Būtinai peržiūrėkite Trikčių šalinimo skyrių – ten rasite greitus sprendimus.
Išvada
Jūs ką tik sužinojote, kaip įdiegti Ruby kodą į produkciją naudojant Stackhero – procesas yra ir paprastas, ir galingas.
Jei norite sužinoti daugiau, Išplėstinio diegimo naudojimo dokumentacijoje rasite temas apie skirtingų git šakų, specifinių žymų ar commit'ų diegimą, kelių aplinkų (pvz., staging ir production) valdymą. Taip pat rasite patarimų, kaip dirbti su aplinkos kintamaisiais ir dar daugiau.
Ir nepamirškite – jei diegimo metu iškyla problemų, Trikčių šalinimo dokumentacija yra puikus šaltinis, padėsiantis greitai jas išspręsti ir užtikrinti sklandų darbą.