Când vine vorba de implementarea unei aplicații, există de obicei două opțiuni: a VPS sau a PaaS (platforma ca serviciu). Acest articol vă va arăta o rețetă pentru implementarea unei aplicații în producție pe un PaaS ca. Heroku.

Pasul 1 – Creați proiectul

Primul pas este de a crea o structură simplă pentru proiectul nostru cu câteva fișiere de bază. Pentru acest articol, voi crea un server demo cu NodeJS.

Într-un folder nou, voi deschide un terminal și voi executa comanda npm init -y pentru a crea un nou proiect. Serverul fictiv va fi scris în Expres, deci trebuie să rulăm npm install express pentru a instala acest modul.

Odată ce această bibliotecă este instalată, putem crea un fișier nou pentru proiectul nostru, numit app.js. În interiorul acestuia vom scrie codul pentru serverul nostru simplu:

Heroku Deploy Cum sa impingeti o aplicatie web sau
BRUT

Putem porni aplicația rulând node app.js. Apoi îl putem încerca la următoarea adresă URL http://localhost:3000. În acest moment ar trebui să vedeți mesajul Hello World în browser.

Heroku Deploy Cum sa impingeti o aplicatie web sau

Pasul 2 – Sistem de control al versiunii

Următorul pas este să alegem un sistem de control al versiunilor și să plasăm codul nostru într-o platformă de dezvoltare într-un depozit.

Cel mai popular sistem de control al versiunilor este Git impreuna cu Github ca platformă de dezvoltare, deci asta vom folosi aici.

Pe GitHub, continuați și creați un nou depozit pentru aplicația dvs., astfel:

1612117746 327 Heroku Deploy Cum sa impingeti o aplicatie web sau

Pentru a încărca codul local într-un depozit, trebuie să executați comenzile listate pe Github după ce faceți clic Create repository buton:

1612117746 862 Heroku Deploy Cum sa impingeti o aplicatie web sau
Comenzi pentru încărcarea codului nostru în repo Github

! Înainte de a face acest lucru, trebuie să ignorăm unele fișiere. Vrem să încărcăm în depozit numai codul pe care îl scriem, fără dependențe (modulele instalate).

Pentru aceasta, trebuie să creăm un fișier nou .gitignore iar în interiorul său scrieți fișierul pe care vrem să îl ignorăm.

1612117746 137 Heroku Deploy Cum sa impingeti o aplicatie web sau
Structura folderului și fișierul .gitignore

Acum, putem scrie comenzile listate în imaginea de mai sus (cea de la GitHub).

Dacă ați rulat corect comenzile, atunci va fi pe pagina depozitului dvs. Dacă îl reîmprospătați, ar trebui să vă vedeți fișierele, cu excepția celui pe care l-ați ignorat în mod explicit, și anume node_modules.

1612117746 166 Heroku Deploy Cum sa impingeti o aplicatie web sau

La acest pas, putem conecta depozitul de la Github la aplicația noastră Heroku.

Mai întâi, creați o nouă aplicație pe Heroku și urmați pașii enumerați pe platformă.

1612117746 862 Heroku Deploy Cum sa impingeti o aplicatie web sau

Odată ce aplicația a fost creată, ar trebui să apară o fereastră similară cu aceasta:

1612117747 198 Heroku Deploy Cum sa impingeti o aplicatie web sau
Tabloul de bord al aplicației

Acum, dacă vă uitați la navigarea din partea de sus, veți vedea Overview, Resources, Deploy, Metrics și așa mai departe. Fii sigur că Deploy este selectat. Apoi, pe al doilea rând, faceți clic pe pictograma GitHub.

1612117747 637 Heroku Deploy Cum sa impingeti o aplicatie web sau
Faceți clic pe conectare

Căutați aplicația dorită, care este demo-deploy-app-09 în cazul nostru. Apoi apasa Connect.

1612117747 706 Heroku Deploy Cum sa impingeti o aplicatie web sau
Implementați sucursala

Odată ce aplicația este conectată cu succes la contul dvs. Heroku, puteți face clic Deploy Branch pentru a vă implementa aplicația.

Dacă doriți, puteți selecta și opțiunea Enable Automatic Deploys care va extrage automat codul din depozitul Github de fiecare dată când faceți o apăsare către acel depozit.

Odată ce aplicația a fost implementată, puteți face clic pe Vizualizare pentru a vă deschide aplicația.

1612117747 952 Heroku Deploy Cum sa impingeti o aplicatie web sau

Pasul 4 – Configurați Heroku pentru a rula corect aplicația

Dacă deschideți aplicația în acest moment, ar trebui să vedeți așa ceva:

1612117748 287 Heroku Deploy Cum sa impingeti o aplicatie web sau

Așa este, o eroare. Asta pentru că Heroku nu știe cum să pornească aplicația noastră.

Dacă vă amintiți, am executat comanda node app.js pentru a porni aplicația local.
Heroku nu are de unde să știe ce comenzi trebuie să ruleze pentru a porni aplicația și de aceea a aruncat o eroare.

Pentru a rezolva această problemă, trebuie să creăm un nou fișier numit Procfile cu următorul conținut: web: node ./app.js.

Pentru a ne actualiza aplicația, tot ce trebuie să facem este să împingem un nou commit în GitHub. Dacă am activat Automatic Deploys opțiune, atunci codul va fi tras automat la Heroku. În caz contrar, trebuie să facem clic pe Deploy Branch din nou.

Odată ce aplicația este reconstruită, ar trebui să o vedem funcționând astfel:

1612117748 810 Heroku Deploy Cum sa impingeti o aplicatie web sau

Pasul 5 – Cum să adăugați un supliment

Un avantaj cheie pe care Heroku îl oferă este faptul că puteți adăuga cu ușurință resurse sub formă de add-ons la proiectul tău. Aceste resurse externe vin sub formă de baze de date, instrumente de înregistrare și monitorizare, instrumente CI și CD sau instrumente de testare.

Deci, acum să vedem cum să adăugați o nouă resursă la proiectul dvs. Mai întâi, vom merge la Resurse și, de acolo, vom adăuga un nou instrument pentru testare.

1612117748 949 Heroku Deploy Cum sa impingeti o aplicatie web sau

Continuați și faceți clic pe Find more add-ons și apoi căutați Loadmill.

Moara de încărcare este un instrument de testare care este foarte bun pentru testarea de regresie și testarea sarcinii.

1612117748 22 Heroku Deploy Cum sa impingeti o aplicatie web sau

Continuați și faceți clic pe Install…. Apoi alegeți aplicația pe care doriți să o conectați.

1612117748 140 Heroku Deploy Cum sa impingeti o aplicatie web sau

La acest pas, Heroku vă va crea automat un cont nou pe platforma furnizată.

În fila Resurse, puteți vedea resursa adăugată recent:

1612117748 456 Heroku Deploy Cum sa impingeti o aplicatie web sau

Dacă mergeți mai departe și accesați acest supliment, ar trebui să vedeți tabloul de bord al acestuia cu un tutorial introductiv și un test demonstrativ creat pentru dvs.

1612117748 676 Heroku Deploy Cum sa impingeti o aplicatie web sau
Tabloul de bord Loadmill

Concluzie

Heroku permite dezvoltatorilor să implementeze rapid și aproape fără durere o aplicație pe un server web.

De asemenea, oferă o mulțime de pluginuri pe care le puteți integra în aplicația dvs.

O soluție PaaS vă va permite întotdeauna să vă deplasați mai repede decât soluția cu un VPS în care trebuie să configurați totul de la bază.