Sommario:

Come creare un sito Web su un Raspberry Pi, con Node.js, Express e MongoDBParte 1: 6 passaggi
Come creare un sito Web su un Raspberry Pi, con Node.js, Express e MongoDBParte 1: 6 passaggi

Video: Come creare un sito Web su un Raspberry Pi, con Node.js, Express e MongoDBParte 1: 6 passaggi

Video: Come creare un sito Web su un Raspberry Pi, con Node.js, Express e MongoDBParte 1: 6 passaggi
Video: nodejs server web 2024, Dicembre
Anonim
Come costruire un sito Web su un Raspberry Pi, con Node.js, Express e MongoDB…Parte 1
Come costruire un sito Web su un Raspberry Pi, con Node.js, Express e MongoDB…Parte 1

Benvenuto nella PARTE 1 del mio tutorial sull'app web node.js. La parte 1 esaminerà il software necessario utilizzato per lo sviluppo di app node.js, come utilizzare il port forwarding, come creare un'app utilizzando Express e come eseguire la tua app. La seconda parte di questo tutorial esaminerà tutto il codice e la struttura della mia applicazione web completa. Se sei pronto per questo, visitalo qui.

Quindi, mentre costruivo la mia pagina di lancio personale, ho trovato molto difficile uscire dalle erbacce. C'è molto di più su Internet di quanto potrò mai capire sulla creazione di una pagina web.

Questa è una guida su come utilizzare Node.js, Express e Mongodb. per creare una pagina web.

Il codice per tutto questo è qui.

La mia pagina web si chiama Internet. Si prega di visitare se si desidera uno sguardo più interattivo a un sito Web personale.

Ho aperto questa pagina per avere una presenza personale su Internet con i progetti che ho realizzato, con collegamenti ai miei progetti istruttori per maggiori dettagli.

Questo sito è ospitato a casa mia su un pi zero W.

Passaggio 1: cose di cui hai bisogno

Cose di cui hai bisogno
Cose di cui hai bisogno

1 volta. Non posso sottolineare che sviluppare un sito e comprenderne veramente il funzionamento interno è un processo lungo. Ho una laurea in ingegneria elettrica con specializzazione in microelettronica e un amore per la codifica, e mi ci sono voluti ancora mesi per realizzarlo.

Questo tutorial sarà un buon elemento costitutivo, ma per favore leggi più documentazione online per capire ogni pezzo.

2. Raspberry pi: qualsiasi modello andrà bene. Anche qualsiasi computer con Linux funzionerà. In realtà, qualsiasi computer andrà bene, vado solo più in dettaglio su come eseguirlo su un pi.

3. Connessione Internet - se hai intenzione di ospitare questo al mondo. È necessario un router o uno switch di rete per configurare il port forwarding.

4. Software: funzionerà qualsiasi piattaforma di codifica, Sublime, Webstorm, Notepadd++, Visual Studios o qualsiasi altra cosa. Ho usato principalmente Webstorm o Sublime.

Passaggio 2: port forwarding sul tuo Raspberry Pi

Port forwarding sul tuo Raspberry Pi
Port forwarding sul tuo Raspberry Pi
Port forwarding sul tuo Raspberry Pi
Port forwarding sul tuo Raspberry Pi

Quindi, presumo che tu abbia già impostato il tuo Raspberry Pi. In caso contrario, dai un'occhiata a questo semplice tutorial qui.

Il mio pi greco esegue Jessie Lite ed è tutto terminale. Il vantaggio di questo è che non ho molti processi in esecuzione in background che potrebbero rallentare il mio server con traffico elevato. Permettetemi di affermare ora che questo tutorial è per siti a basso traffico. Qualsiasi sito con traffico elevato sarà lento su un pi e potrebbe causare il crash del server.

Port forwarding

Con il tuo pi configurato, dovrai abilitare il port forwarding sul tuo router o switch. Per fare ciò, trova le impostazioni di port forwarding nel tuo router. Ogni router è diverso, sto mostrando la mia GUI Linksys Velop qui.

Il mio sito è configurato sulla porta 3000, questo può essere modificato nel codice sorgente nel file app.js o www.

Ho anche la porta 22 configurata per l'inoltro in modo da poter SSH nel mio pi, questo può essere impostato nelle impostazioni pi. SSH è un modo per utilizzare il terminale sul tuo pi mentre non si trova sulla stessa rete e anche mentre non si utilizza l'output del display dal pi. Ciò mi consente di aggiornare il mio sito Web da un computer diverso e di inviare le modifiche al mio pi.

Segui le immagini per impostare il port forwarding.

Servizio DNS

Avrai bisogno di un servizio che colleghi il tuo indirizzo IP a un nome di indirizzo web. Sarai in grado di digitare l'indirizzo IP globale del tuo router seguito dal numero di porta per accedere al tuo sito. Questo, tuttavia, è difficile soprattutto se il tuo IP globale cambia. Ciò che fa un servizio DNS è tenere traccia e aggiornare queste modifiche in modo che il tuo nome web e IP siano collegati. Scelgo di utilizzare un servizio gratuito tramite no-ip. Sei libero di pagare tutto quello che vuoi. Questo è solo un modo gratuito che conosco.

www.noip.com/

Passaggio 3: installazione del software necessario su Pi

Installazione del software necessario su Pi
Installazione del software necessario su Pi
Installazione del software necessario su Pi
Installazione del software necessario su Pi
Installazione del software necessario su Pi
Installazione del software necessario su Pi
Installazione del software necessario su Pi
Installazione del software necessario su Pi

Se hai scaricato il mio codice GitHub non dovrai fare altro che eseguire un semplice comando npm start per far funzionare il sito. Tuttavia, poiché questo è un tutorial approfondito, spiegherò come installare tutto il software e i pacchetti necessari.

Mentre sei sul tuo computer pi o linux (ci saranno diversi comandi per usare Windows), esegui i seguenti comandi.

Li ho suddivisi in singoli passaggi per renderli più facili da seguire.

1. Installa node.js e npm

Node.js è fondamentalmente lo script java che crea il server. NPM è un gestore di pacchetti nodo e gestisce tutto il middleware necessario con node.js.

Esegui i seguenti comandi su una macchina Linux o Mac da installare.

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash sudo apt-get install -y nodejs

Per scaricare su Windows, basta usare l'exe che trovi qui.

Questo collegamento è per l'aiuto di Linux se non su un raspberry pi.

2. Installa MongoDB

MongoDB è proprio questo, un database. Lo uso per una parte di accesso e contatore del traffico della mia pagina web.

Esegui i seguenti comandi su una macchina Linux o Mac da installare.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

echo "deb https://repo.mongodb.org/apt/debian jessie/mongodb-org/3.4 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

sudo apt-get update

sudo apt-get install -y mongodb-org

Per scaricare su Windows, basta usare l'exe che trovi qui.

Questo collegamento è per l'aiuto di Linux se non su un raspberry pi.

3. Installa Grunt

Grunt è come npm, poiché puoi usarlo insieme ad altri plugin. Non lo uso per la mia app, tuttavia è molto utile quando si automatizzano le attività. Questo passaggio può essere saltato completamente affinché la tua app funzioni.

Per Windows, Mac o Linux, usa il seguente comando.

npm install -g grunt-cli

4. Installa Express

Express è un modo semplice per utilizzare il framework js del nodo. Stiamo per installare un generatore espresso. Questo crea il framework facile da usare di un'applicazione web.

Per Windows, Mac o Linux, usa il seguente comando.

npm install express-generatore -g

Passaggio 4: creare un'app Express Node.js

Crea un'app Express Node.js
Crea un'app Express Node.js
Crea un'app Express Node.js
Crea un'app Express Node.js

Passa alla posizione della cartella in cui prevedi di avere la tua app. Una volta qui, tutte le installazioni future saranno all'interno di questa cartella.

Esegui i seguenti comandi su una macchina Linux o Mac per cambiare directory.

sudo cd /home/pi/myapp

Per Windows:

cd C:\Users\pi\Desktop\myapp

Usa il generatore express per creare il framework js del nodo necessario.

express nameofmyapp

Questo creerà un progetto node.js espresso nudo, puoi modificarne le caratteristiche durante questo passaggio trovando diversi comandi come mostrato di seguito usando il comando -h. Oppure puoi modificare manualmente il modello generato, come ho fatto io. Ne parlerò più in dettaglio nella parte 2. Puoi aggiungere altre variabili a questo codice per modificare le impostazioni nella tua applicazione come l'utilizzo di html, manubrio, jade e altri. Per questo eseguire il comando:

express -h

Continua a configurare la tua applicazione web node.js eseguendo i seguenti comandi:

cd nameofmyapp

installazione npm

Questo installa tutti i pacchetti necessari che la tua applicazione web node.js dovrà eseguire e altri che sono disponibili per l'uso.

In questo esempio il percorso del file per l'applicazione sarebbe:

/home/pi/miaapp/nomedellamiaapp

Questo perché il generatore express crea un file in base alla stringa che inserisci dopo di esso. Se sei già nella directory desiderata, usa semplicemente express.

Passaggio 5: esegui la tua applicazione Web

Esegui la tua applicazione web
Esegui la tua applicazione web
Esegui la tua applicazione web
Esegui la tua applicazione web

Per eseguire la tua applicazione web node.js, esegui il comando:

npm inizio

Per renderlo più efficiente durante la codifica in modo che la nostra applicazione si aggiorni automaticamente dopo aver apportato modifiche, installeremo nodemon.

npm install -g nodemon

Qui è dove la maggior parte dei tutorial ti direbbe di divertirti a costruire e lasciarti a capire il duro lavoro delle gambe. Nei prossimi passaggi ti illustrerò come ho creato la mia applicazione.

Passaggio 6: credito

Non proprio un passo, ma voglio elencare le mie fonti e ispirazione per questo tutorial.

Questo Leggimi di Github è stato scritto da un buon amico mentre lavorava al nostro progetto di design senior e mi è servito da ispirazione su come creare il mio sito.

github.com/SDP-DT04/Web-Application/blob/m…

Questo tutorial è stato uno strumento utile nel processo di creazione di un'applicazione web.

kroltech.com/2013/12/29/boilerplate-web-app…

Per maggiori informazioni su un sito node.js visita la mia Parte 2.

Consigliato: