La pubblicazione di una WebAPP o API, realizzata con Node.js, può essere paragonato alla scalata del Nanga Parbat in inverno, per chi proviene da altri ambienti come PHP. Putroppo mentre con PHP e altri linguaggi, è sufficiente trasferire i file via FTP dal proprio computer alla cartella del proprio spazio web, nel caso di Node.js, la procedura varia a seconda di quale servizio di utilizza e passa inevitabilmente per la scrittura di comandi tramite la finestra terminale del proprio computer. Un pò come avveniva alla fine degli anni 90 per scaricare un file dalla rete usando il browser.
A queste "diffcoltà" inoltre si aggiungono quelle del numero limitato di provider in grado di offrire spazi gratuiti, ma fortunatamente per piccole applicazioni di test o demo è possibile sfruttare "Heroku" (www.heroku.com) che è una società del gruppo Salesforce azienda leader nel Cloud.
Cos'è Heroku?
Heroku è una delle piattaforme di servizi basati su cloud (PaaS: Platform as a service) più longeve e popolari. Inizialmente supportava solo le app Ruby, ma ora può essere utilizzato per ospitare app sviluppati in molti linguaggi e ambienti di programmazione, incluso Node e quindi Express!
Heroku offre sia servizi a pagamento che un livello gratuito, con alcune ovvie limitazioni. A differenza di altri provider, il servizio è veramente gratuito, nel senso che non ti verrà chiesto di pagare nulla dopo un certo periodo di tempo.
- Heroku si prende cura di gestire tutta l’infrastruttura web per noi, così come avviene per altri provider che erogano servizi PaaS (Platform as a Service). Ciò rende molto più facile iniziare, perché non ti dovrai preoccupare dei server, del bilanciamento del carico, dei proxy, dei firewall, del riavvio del tuo sito Web in caso di arresto anomalo o di qualsiasi altra infrastruttura Web necessaria a far funzionare un sito web.
- Sebbene abbia alcune limitazioni, per applicazioni demo o WebAPP con poco traffico, può benissimo essere usato come primo trampolino di lancio del nostro lavoro. Alcune delle limitazioni sono legate al tempo in cui un sito rimane in esecuzione sempre attivo. In un mese non potrà mai essere al 100%, ma è difficile che il tuo sito o app abbia una vista ogni secondo.
Per poter eseguire la tua applicazione, Heroku deve essere in grado di configurare l'ambiente e le dipendenze appropriate e capire anche con quali comandi deve essere lanciato.
Per le app Node.js in generale, tutte queste informazioni sono ottenute grazie al file package.json
.
Per far funzionare la tua applicazione su Heroku, è necessario inserire l’applicazione in un repository git e apportare alcune modifiche minori al file package.json
. Una volta fatto ciò, possiamo creare un account Heroku, ottenere il client Heroku e usarlo per installare il nostro sito web.
Registrarsi a Heroku
Per iniziare a utilizzare Heroku dovrai prima di tutto creare un account. La procedura è molto semplice e può essere eseguita in pochi minuti.
Ecco i passi che dovrai seguire:
- Vai su www.heroku.com e clicca sul pulsante "Sign up for free".
- Immettere i dati obbligatori e quindi cliccare su "Create Free Account". Ti verrà chiesto di controllare il tuo account email per confermare l’attivazione, quindi usa un’email valida e non temporanea.
- Nell’email ricevuta, troverai un link che ti permetterà di accedere al tuo pannello di login dell’area. Aggiungilo ai preferiti in modo da accedere rapidamente nei successivi collegamenti.
- Immettere la password e fare clic su "Set Password and Login".
- Avrai quindi accesso alla dashboard di Heroku, da dove potrai creare il link della tua prima applicazione.
Installare il client Git
Come dicevamo, Heroku è strettamente integrato con il sistema di controllo delle versione del codice sorgente git, che viene sfruttato per caricare e sincronizzare qualsiasi modifica apportata all'applicazione in produzione.
Nel tuo computer quindi deve essere installato Git. Puoi verificarlo subito, aprendo una finestra terminale e digitando il comando:
git --version
Se ti viene fornita una risposta indicante la versione installata, allora puoi procedere con l’installazione del client Heroku. Diversamente dovrai installare Git, seguendo questi passi (es. windows):
- Vai su http://git-scm.com/download/win e scarica il file eseguibile
- Fai doppio click sul file eseguibile e segui la procedura guidata.
NB: Lascia le impostazioni predefinite e procedi fino alla fine.
Per verificare che l'installazione sia stata eseguita con successo, apri la finestra terminale e digita:
git --version
Installare il client Heroku
Scarica e installa il client Heroku seguendo le istruzioni cliccando qui, selezionando il tuo sistema operativo. Dopo aver installato il client, potrai eseguire i comandi che vedremo nel prossimo tutorial disponibile all'interno della WebStartUniversity. Ad esempio per ottenere assistenza sul client, potrai scrivere:
help heroku