Litar

Cara Membangun Laman Web di Raspberry Pi, Dengan Node.js, Express, dan MongoDB ... Bahagian 1: 6 Langkah-langkah

Membuat Portofolio NodeJS,MongoDB

Membuat Portofolio NodeJS,MongoDB

Isi kandungan:

Anonim

Selamat datang ke BAHAGIAN 1 tutorial aplikasi web node.js saya. Bahagian 1 akan melalui perisian yang diperlukan untuk aplikasi pembangunan node.js, bagaimana cara menggunakan port forwarding, cara membuat aplikasi menggunakan Express, dan cara menjalankan aplikasi anda. Bahagian kedua tutorial ini akan mengatasi semua kod dan struktur aplikasi web penuh saya. Jika anda sudah bersedia untuk melawatnya di sini.

Oleh itu, semasa membina laman pelancaran peribadi saya, saya mendapati ia amat sukar untuk keluar dari rumpai. Terdapat lebih banyak di internet daripada yang saya faham tentang membina laman web.

Ini adalah cara untuk menggunakan Node.js, Express, dan Mongodb. untuk membuat laman web.

Kod untuk semua ini ada di sini.

Halaman web saya dipanggil Internet. Sila lawati jika anda mahu melihat lebih interaktif di laman web peribadi.

Saya memulakan halaman ini untuk mempunyai kehadiran peribadi di internet dengan projek yang telah saya lakukan, dengan pautan ke projek pengajaran saya untuk maklumat lanjut.

Laman ini dihoskan di rumah saya pada pi zero W.

Bekalan:

Langkah 1: Perkara yang Anda Perlu

1. Masa. Saya tidak dapat menekankan bahawa untuk membangunkan tapak, dan benar-benar memahami kerja dalaman, adalah proses yang lama. Saya mempunyai ijazah dalam kejuruteraan elektrik dengan tumpuan dalam elektronik mikro, dan cinta untuk pengekodan, dan ini masih memerlukan saya beberapa bulan untuk dicapai.

Tutorial ini akan menjadi blok bangunan yang baik, tetapi sila dokumentasi dalam talian untuk memahami setiap bahagian.

2. Raspberry pi - apa-apa model akan dilakukan. Juga mana-mana komputer yang menjalankan linux akan lakukan. Sebenarnya, mana-mana komputer yang akan dilakukan, saya hanya masuk ke dalam lebih terperinci bagaimana untuk menjalankannya pada pi.

3. Sambungan internet - jika anda bercadang untuk menjadi tuan rumah ini kepada dunia. Router atau suis rangkaian diperlukan untuk mengkonfigurasi port forwarding.

4. Perisian - Sebarang platform pengekodan akan berfungsi, Sublime, Webstorm, Notepadd ++, Visual Studios, atau apa-apa lagi. Saya terutamanya menggunakan Webstorm atau Sublime.

Langkah 2: Port Forwarding pada Raspberry Pi anda

Oleh itu, saya akan menganggap bahawa anda sudah mempunyai pi Raspberry anda. Jika tidak semak tutorial mudah ini di sini.

Pi saya sedang menjalankan Jessie lite, dan semuanya terminal. Manfaat ini adalah bahawa saya tidak mempunyai banyak proses berjalan di latar belakang yang mungkin membuat server saya berjalan lebih lambat dengan lalu lintas yang tinggi. Saya nyatakan sekarang bahawa tutorial ini adalah untuk tapak trafik yang rendah. Mana-mana laman web dengan lalu lintas yang tinggi akan menjadi perlahan pada pi dan mungkin membuat kemalangan pelayan anda.

Penghantaran pelabuhan

Dengan pi anda ditetapkan, anda perlu mendayakan penghantaran port pada penghala atau suis anda. Untuk melakukan ini, cari tetapan penyambungan pelabuhan dalam penghala anda. Setiap router berbeza, saya menunjukkan GUI Linksys Velop saya di sini.

Laman saya dikonfigurasi untuk port 3000, ini boleh ditukar dalam kod sumber dalam app.js atau www file.

Saya juga mempunyai pelabuhan 22 yang ditetapkan untuk penghantaran supaya saya boleh SSH ke pi saya, ini boleh ditubuhkan dalam tetapan pi. SSH adalah satu cara untuk menggunakan terminal pada pi anda manakala tidak pada rangkaian yang sama, dan juga tidak menggunakan output paparan dari pi. Ini membolehkan saya mengemaskini laman web saya dari komputer yang berbeza dan menolak perubahan pada pi saya.

Ikut gambar untuk menyiapkan penghantaran port.

Perkhidmatan DNS

Anda memerlukan perkhidmatan yang menghubungkan alamat ip anda ke nama alamat web. Anda akan dapat menaip alamat ip global router anda diikuti dengan nombor port untuk mengakses tapak anda. Walau bagaimanapun, ini sukar terutama jika ip global anda berubah. Apa perkhidmatan DNS adalah jejak dan mengemas kini perubahan ini supaya nama dan ip web anda dikaitkan. Saya memilih untuk menggunakan perkhidmatan percuma melalui no-ip. Anda dialu-alukan untuk membayar apa sahaja yang anda mahukan. Ini hanya cara percuma yang saya tahu.

http://www.noip.com/

Langkah 3: Memasang Perisian Yang Diperlukan pada Pi

Sekiranya anda telah memuat turun kod GitHub saya, anda tidak perlu melakukan apa-apa kecuali menjalankan arahan permulaan npm yang mudah untuk mendapatkan tapak yang berjalan. Walau bagaimanapun, kerana ini adalah tutorial mendalam saya akan menerangkan cara memasang semua perisian dan pakej yang diperlukan.

Semasa di pi anda, atau komputer linux (terdapat perintah yang berbeza untuk menggunakan windows), jalankan perintah berikut.

Saya telah memecahkan ini sebagai langkah individu untuk memudahkannya diikuti.

1. Pasang node.js dan npm

Node.js pada asasnya adalah skrip java yang mencipta pelayan. NPM adalah pengurus pakej nod dan mengendalikan semua alat tengah yang diperlukan dengan node.js.

Jalankan perintah berikut pada mesin linux atau mac untuk dipasang.

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

Untuk memuat turun pada tingkap, gunakan exe yang terdapat di sini.

Pautan ini adalah untuk bantuan linux jika tidak pada pi raspberry.

2. Pasang MongoDB

MongoDB hanya itu, pangkalan data. Saya menggunakan ini untuk bahagian log masuk dan trafik dari laman web saya.

Jalankan perintah berikut pada mesin linux atau mac untuk dipasang.

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

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

kemas kini sudo apt-get

sudo apt-get install -y mongodb-org

Untuk memuat turun pada tingkap, gunakan exe yang terdapat di sini.

Pautan ini adalah untuk bantuan linux jika tidak pada pi raspberry.

3. Pasang Grunt

Grunt adalah seperti npm, kerana anda boleh menggunakannya bersama dengan plugin lain. Saya tidak menggunakannya untuk aplikasi saya, tetapi sangat membantu apabila mengautomasikan tugas. Langkah ini boleh dilangkau sepenuhnya untuk aplikasi anda berfungsi.

Untuk tingkap, mac, atau linux gunakan arahan berikut.

npm memasang -g grunt-cli

4. Pasang Express

Express adalah cara mudah untuk menggunakan rangka js nod. Kami akan memasang penjana yang jelas. Ini mewujudkan rangka kerja mudah untuk aplikasi web.

Untuk tingkap, mac, atau linux gunakan arahan berikut.

npm memasang ekspres -g penjana

Langkah 4: Buat Aplikasi Express Node.js

Navigasi ke lokasi folder yang anda merancang untuk mempunyai aplikasi anda. Sekali di sini semua pemasangan masa depan akan berada di dalam folder ini.

Jalankan arahan berikut pada mesin linux atau mac untuk menukar direktori.

sudo cd / home / pi / myapp

Untuk Windows:

cd C: Users pi Desktop myapp

Gunakan penjana tegas untuk membuat rangka js nod diperlukan.

express nameofmyapp

Ini akan mewujudkan projek node.js express yang kosong, anda boleh mengedit ciri-ciri itu semasa langkah ini dengan mencari arahan yang berbeza seperti yang dilihat di bawah menggunakan perintah -h. Atau anda boleh mengedit templat yang dijana secara manual, seperti yang saya ada. Saya akan membincangkannya dengan lebih terperinci dalam bahagian 2. Anda boleh menambah pembolehubah lain pada kod ini untuk menukar tetapan dalam aplikasi anda seperti menggunakan html, hendal, jed, dan lain-lain. Untuk menjalankan arahan ini:

ekspres -h

Teruskan menubuhkan aplikasi web node.js anda dengan menjalankan perintah berikut:

cd nameofmyapp

npm memasang

Ini memasang semua pakej yang dibutuhkan yang perlu dijalankan oleh aplikasi web node.js anda dan lebih banyak lagi yang tersedia untuk digunakan.

Dalam contoh ini laluan fail untuk aplikasi adalah:

/ home / pi / myapp / nameofmyapp

Ini kerana penjana tegas membuat fail berdasarkan rentetan yang anda letakkan selepas itu. Sekiranya anda sudah berada dalam direktori yang dikehendaki, gunakan ekspres sahaja.

Langkah 5: Jalankan Aplikasi Web Anda

Untuk menjalankan aplikasi web node.js anda, jalankan arahan:

npm mula

Untuk menjadikannya lebih cekap semasa pengekodan supaya kemas kini aplikasi kami secara automatik selepas kami membuat perubahan, kami akan memasang nodemon.

npm memasang -g nodemon

Di sinilah kebanyakan tutorial akan memberitahu anda untuk bersenang-senang membina dan meninggalkan anda untuk mengetahui kerja keras. Dalam langkah seterusnya saya akan berjalan anda walaupun bagaimana saya membina aplikasi saya.

Langkah 6: Kredit

Tidak benar-benar satu langkah tetapi saya mahu menyenaraikan sumber dan inspirasi saya untuk tutorial ini.

Github ReadMe ini ditulis oleh seorang kawan yang baik semasa mengerjakan projek reka bentuk kanan kami dan telah banyak memberi inspirasi tentang cara membuat laman web saya.

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

Tutorial ini adalah alat yang berguna dalam proses pembuatan aplikasi web.

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

Untuk maklumat lanjut mengenai tapak node.js lawati Bahagian saya 2.