Server ManagerBlog
Tutti gli articoli

deploy

Come pubblicare una piccola web app su un VPS senza DevOps

La tua app gira benissimo sul portatile — la parte difficile è la distanza tra «funziona sul mio computer» e «online su internet». Ecco cosa significa davvero pubblicarla, le quattro cose di cui ogni app ha bisogno e come saltare tutta la configurazione.

  • deploy
  • primi-passi
  • hosting

Hai costruito qualcosa. Gira sul tuo portatile — digiti un comando, apri localhost, ed eccolo lì. Ora vuoi che lo vedano anche gli altri, a un indirizzo vero, su internet. È in quest'ultimo passaggio che un numero sorprendente di progetti personali si arena in silenzio.

Il codice è pronto. Quello che resta è tutto ciò che gli sta intorno: portare l'app su un server, tenerla in funzione anche dopo che hai chiuso il portatile e renderla raggiungibile a un indirizzo come si deve, con tanto di lucchetto. Quell'insieme di incombenze ha un nome — DevOps — ed è la parte per cui nessuno si era iscritto.

Cosa significa davvero «pubblicare»

Pubblicare significa solo spostare la tua app da «gira sul mio computer» a «gira su una macchina che il mondo intero può raggiungere». Perché succeda, devono essere vere tre cose:

  • il codice deve stare sul server,
  • deve continuare a funzionare — anche dopo un crash o un riavvio,
  • e i visitatori devono poterlo raggiungere a un dominio, via HTTPS.

Sul portatile le prime due le ottieni quasi gratis: avvii l'app e gira finché non la fermi. Un server è un'altra cosa — ed è proprio quella differenza a essere tutto il lavoro.

Il muro tra la tua app e internet

Ecco la pila di piccoli pezzi poco familiari che di solito si mette in mezzo:

  • Un gestore di processi — la tua app deve avviarsi da sola e tornare su dopo un crash o un riavvio. Se la avvii a mano, muore nel momento in cui esci dalla sessione.
  • Un reverse proxy — la tua app è in ascolto su una porta interna come la 3000, ma i visitatori arrivano sulla 80 e sulla 443. Qualcosa deve stare davanti e instradarli dentro.
  • HTTPS — il lucchetto. Un certificato, emesso e rinnovato, altrimenti i browser etichettano il tuo sito come «Non sicuro».
  • Un dominio e una porta aperta — il nome deve puntare al server, e il firewall deve lasciar passare il traffico web.

Nessuno di questi è difficile preso da solo. Insieme, per la prima pubblicazione, sono un muro — quattro strumenti che non hai mai incontrato, ognuno con il suo file di configurazione e il suo modo di fallire in silenzio.

Di cosa ha davvero bisogno la tua app

Togli di mezzo gli strumenti e i requisiti sono semplici. La tua app ha bisogno di un posto dove girare, di un modo per restare in funzione, di un percorso dall'indirizzo pubblico alla sua porta interna e di un certificato perché la connessione sia privata. È tutta qui la lista. Ogni strumento nel mucchio del DevOps esiste per fornire una di queste quattro cose.

Tienilo a mente e pubblicare smette di sembrare magia. Sono quattro necessità — in qualunque modo tu scelga di soddisfarle.

La scorciatoia

Puoi montare ogni pezzo da solo: scegli un gestore di processi, configuri un reverse proxy, imposti i certificati, fai puntare il dominio, apri la porta. È una vera scuola, e un vero pomeriggio — o tre. Oppure puoi lasciare che se ne occupi Server Manager: gli dici che hai una web app e l'indirizzo a cui deve vivere, e lui mette la tua app sul server, la tiene in funzione attraverso crash e riavvii, instrada il tuo dominio verso di lei e attiva l'HTTPS — le quattro necessità, gestite, senza un file di configurazione in vista.

L'unico prerequisito è il dominio. Se non l'hai ancora fatto, parti da come collegare un dominio al server — e il lucchetto arriva da solo una volta che il nome si risolve.

La tua app, il tuo server

La distanza tra «funziona sul mio computer» e «è online» è il punto in cui tante buone idee finiscono ad aspettare per sempre. Non deve andare così. Il codice era la parte difficile, e l'hai già fatta — metterlo online dovrebbe essere la parte facile, non il muro che ti ferma. La tua app, sul tuo server, al tuo indirizzo: è tutta qui la ricompensa.

Le guide di aiuto ti accompagnano passo passo nella pubblicazione di un'app quando sei pronto.