วิธีสร้างเซิร์ฟเวอร์ Raspberry Pi สำหรับการพัฒนา

เผยแพร่แล้ว: 2022-03-11

Raspberry Pi เป็นคอมพิวเตอร์ขนาดเล็กที่คุณสามารถซื้อได้เพียง 5 ดอลลาร์สหรัฐฯ และคุณสามารถใช้ซอฟต์แวร์ประเภทต่างๆ และสร้างโปรเจ็กต์ต่างๆ ได้มากมาย

ในบทความนี้ ผมจะแนะนำคุณตลอดขั้นตอนการตั้งค่าให้เป็นเซิร์ฟเวอร์สำหรับการพัฒนาที่บ้าน และการปรับใช้แอปพลิเคชัน JavaScript แบบฟูลสแตกที่คุณสามารถเข้าถึงได้จากภายนอกเครือข่ายของคุณ เหมาะอย่างยิ่งสำหรับการตั้งค่าพื้นที่ทำงานดิจิทัลระยะไกลของคุณเอง หรือเพียงเพื่อควบคุมฮาร์ดแวร์ที่คุณใช้สำหรับการพัฒนา

คุณต้องการอะไรสำหรับเซิร์ฟเวอร์โฮม Raspberry Pi นี้

แม้ว่าตอนนี้จะเป็นบทช่วยสอน Raspberry Pi 3 โดยเฉพาะ แต่ ควร ใช้งานได้กับรุ่นที่ย้อนกลับไปเป็นรุ่นแรก หากคุณมีรุ่นเก่ากว่าหรือ Raspberry Pi Zero โปรดแจ้งให้เราทราบถึงประสบการณ์ของคุณในความคิดเห็นด้านล่าง

นอกจากบอร์ด Raspberry Pi คุณจะต้อง:

  • ที่ชาร์จ Micro USB
  • สายเคเบิลอีเทอร์เน็ต
  • การ์ด microSD (ขั้นต่ำ 8GB และการ์ดสูงสุด 32GB ดูเหมือนจะทำงานได้ดี)

สิ่งเหล่านี้ยังมีประโยชน์ในระหว่างการตั้งค่าเริ่มต้น:

  • แป้นพิมพ์ USB
  • สาย HDMI และจอภาพ

Raspberry Pi OS: Raspbian

การติดตั้งระบบปฏิบัติการบน Raspberry Pi นั้นง่ายมาก ขั้นแรก ใช้คอมพิวเตอร์ของคุณ ติดตั้งอิมเมจสำหรับบูตลงในการ์ด microSD จากนั้นเพียงใส่การ์ดลงใน Raspberry Pi แล้วบูตจากที่นั่น

Raspbian คือการกระจาย Linux ที่พอร์ตจาก Debian 7.0 ( Wheezy ) และเป็นระบบปฏิบัติการอย่างเป็นทางการสำหรับ Raspberry Pi ที่ปรับให้เหมาะกับสถาปัตยกรรมของอุปกรณ์ แม้ว่าจะมีตัวเลือกอื่นๆ สำหรับการเรียกใช้ OS ที่คุณชื่นชอบบน Pi เราจะใช้ Raspbian เนื่องจากความเรียบง่าย

บทช่วยสอนนี้ได้รับการอัปเดตเพื่อทำงานกับ Raspbian เวอร์ชันนี้ (หรือใหม่กว่า):

 Kernel version : #1 SMP Debian 4.9.110-3+deb9u4 (2018-08-21) Kernel release : 4.9.0-8-amd64

ในการติดตั้ง Raspbian ให้ไปที่หน้าดาวน์โหลดอย่างเป็นทางการและดาวน์โหลดไฟล์ zip ด้วย Raspbian เวอร์ชันล่าสุด

จากนั้น ใส่การ์ด microSD ลงในช่องเสียบการ์ด SD หรืออะแดปเตอร์ของคอมพิวเตอร์ ขึ้นอยู่กับระบบปฏิบัติการของคอมพิวเตอร์ของคุณ ทำตามคำแนะนำที่ให้ไว้บนเว็บไซต์ของ Raspberry สำหรับ Linux, Mac OS หรือ Windows

เมื่อกระบวนการเสร็จสิ้น ให้นำการ์ด SD ออกจากคอมพิวเตอร์ของคุณแล้วใส่ลงใน Raspberry Pi เชื่อมต่อ Raspberry Pi กับเราเตอร์ของคุณโดยใช้สายอีเทอร์เน็ต และเสียบที่ชาร์จ Micro USB ซึ่งจะเริ่มการบูท Raspberry Pi

สำหรับการกำหนดค่าเริ่มต้น มีสองตัวเลือก:

  • หากคุณมีแป้นพิมพ์ USB และจอภาพ HDMI คุณสามารถเสียบเข้ากับ Raspberry Pi สำหรับการตั้งค่าเริ่มต้น
    • Pi ของคุณควรรู้จักอุปกรณ์เหล่านี้ทันทีที่เสียบปลั๊ก
    • ครั้งแรกที่บูท Pi มันจะรันโดยอัตโนมัติ raspi-config หลังจากการบู๊ตครั้งแรก คุณจะต้องเรียกใช้ sudo raspi-config ด้วยตนเองเพื่อกำหนดค่าอุปกรณ์
  • หากไม่มี คุณสามารถเชื่อมต่อกับ Raspberry Pi ในขณะที่ใช้ SSH:
    • ขั้นแรก คุณต้องค้นหาที่อยู่ IP ของ Raspberry Pi ในเครือข่ายท้องถิ่นของคุณ ซึ่งสามารถทำได้โดยเชื่อมต่อกับหน้าผู้ดูแลระบบของเราเตอร์ของคุณ หรือโดยใช้เครื่องมือเครือข่าย เช่น nmap
    • เมื่อคุณมีที่อยู่ IP ของอุปกรณ์แล้ว ให้เชื่อมต่อโดยใช้ SSH จากเทอร์มินัลของคุณ (หรือผ่าน Putty หากคุณใช้ Windows) ผู้ใช้เริ่มต้นคือ pi และรหัสผ่านเริ่มต้นคือ raspberry ตัวอย่างเช่น หากที่อยู่ IP คือ 192.168.1.16 ให้เรียกใช้ ssh [email protected] แล้วป้อนรหัสผ่านเมื่อได้รับแจ้ง
    • เมื่อคุณเชื่อมต่อแล้ว ให้เรียกใช้ sudo raspi-config

raspi-config จะนำคุณไปสู่การตั้งค่าขั้นสุดท้าย คุณสามารถกำหนดค่าตัวเลือกทั้งหมดได้ แต่สิ่งที่สำคัญที่สุดคือสองตัวเลือกแรก: เพื่อขยายระบบไฟล์ ตรวจสอบให้แน่ใจว่าที่เก็บข้อมูล SD การ์ดทั้งหมดพร้อมใช้งานสำหรับระบบปฏิบัติการ และเพื่อเปลี่ยนรหัสผ่านสำหรับผู้ใช้ Pi เริ่มต้น เพื่อให้เซิร์ฟเวอร์ของคุณเป็น ป้องกันจากผู้บุกรุก

Raspi-config

ติดตั้งเว็บเซิร์ฟเวอร์ (Nginx) บน Raspberry Pi . ของคุณ

ถัดไป คุณจะต้องติดตั้งเว็บเซิร์ฟเวอร์ ฉันชอบ Nginx มากกว่าเพราะมันมีหน่วยความจำขนาดเล็ก และเพราะมันเล่นได้ดีกับ Node.js (ซึ่งคุณจะตั้งค่าในภายหลัง) เว็บเซิร์ฟเวอร์อื่นๆ เช่น Apache หรือ lighttpd ก็ใช้งานได้เช่นกัน แต่เราจะใช้ Nginx สำหรับการสาธิตนี้

ก่อนที่คุณจะเริ่มติดตั้งอะไรก็ตาม คุณต้องแน่ใจว่าทุกอย่างเป็นปัจจุบันโดยเรียกใช้คำสั่งเหล่านี้บน Pi:

 sudo apt-get update sudo apt-get upgrade

จากนั้นคุณสามารถติดตั้ง Nginx โดยใช้ apt-get :

 sudo apt-get install nginx

เมื่อการติดตั้งเสร็จสิ้น ให้เริ่มเซิร์ฟเวอร์โดยเรียกใช้:

 sudo service nginx start

หากคุณไม่ต้องค้นหา IP ในเครื่องของ Raspberry Pi ในขั้นตอนก่อนหน้านี้ ถึงเวลาค้นหาโดยใช้ ifconfig เอาต์พุตสำหรับอะแดปเตอร์อีเทอร์เน็ตของคุณจะอยู่ภายใต้ eth0 และมีที่อยู่ IP ในเครื่องที่ระบุว่า inet addr

เมื่อคุณทราบที่อยู่ IP แล้ว คุณสามารถชี้เบราว์เซอร์ของคอมพิวเตอร์ไปที่ที่อยู่นั้น ซึ่งคุณจะเห็นข้อความ "ยินดีต้อนรับสู่ Nginx" เริ่มต้น

เปิดสู่เว็บ: การส่งต่อพอร์ต

คุณสามารถข้ามขั้นตอนนี้ได้ หากคุณไม่ได้วางแผนที่จะเข้าถึง Raspberry Pi จากภายนอกเครือข่ายท้องถิ่นของคุณ แต่สำหรับผู้ที่ต้องการเข้าถึงเซิร์ฟเวอร์จากที่อื่น ให้ตรวจสอบให้แน่ใจว่ามันเป็นไปได้

ในเครือข่ายในบ้านทั่วไป อุปกรณ์ที่เชื่อมต่อกับเราเตอร์จะไม่ปรากฏต่อโลกภายนอก เฉพาะเราเตอร์ของคุณเท่านั้นที่สามารถเข้าถึงได้จากภายนอก โดยใช้ที่อยู่ IP ภายนอก ของเครือข่ายของคุณ เราเตอร์ของคุณมีหน้าที่กำหนดว่าทราฟฟิกขาเข้าใดที่อนุญาตให้เข้าสู่เครือข่าย และอุปกรณ์ใดที่ควรส่งไป

เมื่ออุปกรณ์บนเครือข่ายท้องถิ่นเริ่มต้นการเชื่อมต่อ (เช่น เมื่อคุณเปิดเว็บไซต์บนเบราว์เซอร์ของคุณ) เราเตอร์จะรับรู้การรับส่งข้อมูลการตอบสนองที่เข้ามาเป็นส่วนหนึ่งของการเชื่อมต่อนี้ และอนุญาตผ่าน อย่างไรก็ตาม หากเราเตอร์ได้รับทราฟฟิกที่เข้ามาซึ่งไม่ได้เป็นส่วนหนึ่งของการเชื่อมต่อแบบเปิด (เช่น เมื่ออุปกรณ์ภายนอกพยายามเริ่มต้นการเชื่อมต่อกับอุปกรณ์ภายใน) เราเตอร์จะบล็อกการรับส่งข้อมูลขาเข้าจากการข้ามเข้าสู่เครือข่าย นี่เป็นคุณลักษณะด้านความปลอดภัยที่สำคัญในการปกป้องเครือข่าย!

คุณจะเชื่อมต่อกับ Pi จากภายนอกได้อย่างไร? คำตอบคือการส่งต่อพอร์ต ต้องกำหนดค่าเราเตอร์ให้อนุญาตการเชื่อมต่อขาเข้าบนพอร์ตเฉพาะเพื่อผ่าน และส่งไปยังอุปกรณ์ที่ถูกต้อง ตามค่าเริ่มต้น โปรโตคอล HTTP จะใช้พอร์ต 80 และ SSH ใช้พอร์ต 22 ดังนั้นพอร์ตเหล่านี้จึงเป็นพอร์ตสองพอร์ตที่คุณต้องเปิดบนเราเตอร์ของคุณเพื่อเข้าถึงเว็บแอปพลิเคชันของคุณ และอนุญาตการเชื่อมต่อที่ปลอดภัยสำหรับการจัดการเซิร์ฟเวอร์ของคุณ

การส่งต่อพอร์ต

ขั้นตอนในการกำหนดค่าเราเตอร์ของคุณให้เปิดและส่งต่อพอร์ตอาจแตกต่างกันไปตามผู้ให้บริการอินเทอร์เน็ตและยี่ห้อของเราเตอร์ของคุณ แต่ไม่ว่าในกรณีใด คุณควรสามารถทำได้โดยใช้ตัวเลือกการกำหนดค่าขั้นสูงของหน้าผู้ดูแลระบบเราเตอร์ของคุณ เพียงมองหาตัวเลือกที่มีชื่อ เช่น “การส่งต่อ” “การส่งต่อพอร์ต” หรือ “การแปลที่อยู่เครือข่าย”

คุณต้องเปิดพอร์ตสำหรับการเชื่อมต่อ HTTP และอีกพอร์ตหนึ่งสำหรับ SSH แนวคิดพื้นฐานประกอบด้วยการส่งต่อข้อมูลที่ส่งไปยังพอร์ตภายนอกทั้งสองพอร์ตนี้ไปยัง Raspberry Pi ของคุณ โดยมีการรับส่งข้อมูลเว็บไปที่พอร์ต 80 ซึ่ง Nginx กำลังรับฟัง และการรับส่งข้อมูล SSH ไปที่พอร์ต 22 โดยที่เซิร์ฟเวอร์ SSH ยอมรับการเชื่อมต่อจากคอมพิวเตอร์ภายนอก ต่อไปนี้คือตัวอย่างลักษณะที่อาจปรากฏในหน้าการกำหนดค่าเราเตอร์ของคุณ:

ตารางการกำหนดค่าการส่งต่อพอร์ต

การกำหนดค่าการส่งต่อพอร์ตหากที่อยู่ IP ภายในของ Raspberry Pi คือ 192.168.1.16 การรับส่งข้อมูลขาเข้าทั้งหมดที่ผูกไว้สำหรับพอร์ต 80 หรือ 22 จะถูกส่งต่อไปยังที่อยู่ภายในนี้

คุณสามารถระบุที่อยู่ IP ภายนอกของเราเตอร์ได้โดยพิมพ์ “ที่อยู่ IP ของฉันคืออะไร” ลงใน Google หากคุณย้ายออกนอกเครือข่ายของเราเตอร์ คุณสามารถทดสอบว่าการส่งต่อพอร์ตใช้งานได้โดยเปิดการเชื่อมต่อ SSH ด้วย ssh pi@{external IP address} ในทำนองเดียวกัน การส่งต่อพอร์ต HTTP สามารถทดสอบได้โดยการป้อนที่อยู่ IP ภายนอกลงในแถบที่อยู่ของเบราว์เซอร์ของคุณ เพียงจำไว้ว่าการส่งต่อพอร์ตทำให้ทุกคนจากภายนอกสามารถเข้าถึงอุปกรณ์บนพอร์ตเหล่านี้ได้ หากพวกเขารู้ IP ภายนอกของเราเตอร์ของคุณ

หากคุณไม่มี IP แบบคงที่ คุณสามารถตั้งค่า DNS แบบไดนามิกได้ เป็นขั้นตอนที่ง่ายและสะดวกมาก คุณสามารถตั้งค่า DNS แบบไดนามิกจากเราเตอร์ของคุณ หรือคุณสามารถกำหนดค่า Raspberry Pi ได้ ฉันจะไม่กล่าวถึงวิธีกำหนดค่า DDNS ที่นี่ แต่ BitPi.co มีบทช่วยสอนที่ดีในหัวข้อนี้ หากจำเป็น

ติดตั้งกรอบงาน: Full-stack JavaScript

คุณสามารถเรียกใช้เว็บเฟรมเวิร์กส่วนใหญ่บน Nginx ได้ แต่มาดูวิธีใช้งาน JavaScript แบบเต็มสแต็ก ในการดำเนินการนี้ คุณต้องติดตั้ง Node.js และ MongoDB

ปัจจุบัน Node.js ติดตั้งบน Raspberry Pi ได้อย่างง่ายดายด้วย:

 sudo apt-get install nodejs

เมื่อติดตั้งเสร็จแล้ว คุณสามารถตรวจสอบว่าทำงานได้หรือไม่โดยเรียกใช้ node -v

ตอนนี้คุณสามารถติดตั้ง MongoDB ได้โดยพิมพ์:

 sudo apt-get install mongodb

โปรดทราบว่าหากคุณจำเป็นต้องปิด Raspberry Pi คุณต้องปิดบริการก่อนเพื่อหลีกเลี่ยงความเสียหายของฐานข้อมูล:

 sudo service mongodb stop

ปรับใช้แอปของคุณ

คุณสามารถพัฒนาบนเครื่องท้องถิ่นของคุณ แล้วส่งการเปลี่ยนแปลงของคุณไปยังที่เก็บ Git บน BitBucket เนื่องจาก Raspbian มาพร้อมกับ Git ที่ติดตั้งไว้ล่วงหน้า คุณจึงสามารถดึงโค้ดแอปพลิเคชันล่าสุดลงในอุปกรณ์และเรียกใช้ได้

นั่งร้านโครงการ

ขั้นแรก มาตั้งค่าโค้ดแอปพลิเคชันและพุชไปที่ที่เก็บ Git มีหลายวิธีในการเริ่มแอปพลิเคชัน แต่หนึ่งในรายการโปรดของฉันคือ generator-angular-fullstack ซึ่งสร้างทั้งรหัสเซิร์ฟเวอร์และไคลเอนต์

ติดตั้ง generator-angular-fullstack บนคอมพิวเตอร์ของคุณ:

 npm install -g generator-angular-fullstack

สร้างไดเร็กทอรีใหม่สำหรับแอปพลิเคชันของคุณ:

 mkdir my-app cd my-app

และนั่งร้านแอปพลิเคชัน:

 yo angular-fullstack my-app

สร้างที่เก็บและกดรหัส

ตอนนี้สร้างที่เก็บใน BitBucket ตามที่อธิบายไว้ที่นี่ จากนั้นตั้งค่าไดเร็กทอรีท้องถิ่นของคุณ:

 git init git remote add origin [email protected]:USER/REPO.git

เพื่อให้คุณสามารถคอมมิตและกดรหัส:

 git add . git commit -m 'Initial commit' git push -u origin master

เครื่องกำเนิดไฟฟ้ามาพร้อมกับปลั๊กอินควบคุม grunt-build-control ซึ่งช่วยให้คุณสามารถคอมมิตโค้ดสำหรับบิลด์กับสาขาเฉพาะในที่เก็บของคุณได้ เพียงเพิ่มการกำหนดค่าสำหรับ BitBucket ไปยัง Gruntfile.js ในไดเรกทอรีรากของแอปพลิเคชันของคุณ:

 buildcontrol: { options: { dir: 'dist', commit: true, push: true, connectCommits: false, message: 'Built %sourceName% from commit %sourceCommit% on branch %sourceBranch%' }, bitbucket: { options: { remote: '[email protected]:USER/REPO.git', branch: 'build' } } }, // ...

ตอนนี้เรียกใช้:

 grunt build

…เพื่อสร้างโฟลเดอร์การแจกจ่าย ตามด้วยสิ่งนี้:

 grunt buildcontrol:bitbucket

…เพื่อคอมมิตและพุชโค้ดไปยังบิลด์แบรนช์ในที่เก็บของคุณ

สร้างคีย์ SSH

ตอนนี้คุณมีรหัสของคุณโฮสต์แล้ว ก่อนที่คุณจะปรับใช้กับ Raspberry Pi ได้ คุณต้องสร้างคีย์ SSH สำหรับ Raspberry Pi และเพิ่มลงในบัญชี BitBucket ของคุณ เราจะดำเนินการตามขั้นตอนนี้อย่างรวดเร็ว แต่หากคุณมีปัญหาใดๆ โปรดปฏิบัติตามคู่มือ BitBucket ดังนั้น กลับเข้าสู่ระบบเทอร์มินัล Raspberry Pi ของคุณ และสร้างคู่คีย์สาธารณะ/ส่วนตัว:

 ssh-keygen

จากนั้น เริ่มตัวแทน:

 ssh-agent /bin/bash

และเพิ่มรหัสให้กับตัวแทน:

 ssh-add /home/pi/.ssh/id_rsa

ตอนนี้คุณเพียงแค่ต้องส่งออกเนื้อหาของกุญแจสาธารณะ:

 cat /home/pi/.ssh/id_rsa.pub

…เพื่อให้คุณสามารถคัดลอกและวางลงใน BitBucket

ใน BitBucket ให้คลิกที่รูปโปรไฟล์ของคุณและไปที่ จัดการบัญชี ใต้ SECURITY ให้หา คีย์ SSH แล้วคลิกปุ่ม Add key

โคลนที่เก็บ

ไม่มีแบบแผนสำหรับตำแหน่งที่จะวางโค้ดของแอปของคุณ แต่คุณสามารถสร้างไดเร็กทอรี /var/www และใส่โปรเจ็กต์ทั้งหมดของคุณไว้ที่นั่นได้

 cd /var sudo mkdir www

เพื่อหลีกเลี่ยงการใช้ sudo เมื่อคุณต้องการวางไฟล์ใน webroot คุณสามารถเปลี่ยนเจ้าของเป็นผู้ใช้ Pi ของคุณและกลุ่มเป็น www-data ซึ่ง Nginx ใช้:

 sudo chown -R pi:www-data www cd www

ตอนนี้คุณสามารถโคลนบิลด์แบรนช์ของที่เก็บของคุณและติดตั้งการขึ้นต่อกัน:

 git clone [email protected]:USER/REPO.git --branch build --single-branch cd REPO npm install --production

เมื่อเสร็จแล้ว คุณสามารถเริ่มต้นแอปโดยตั้งค่าสภาพแวดล้อมเป็นเวอร์ชันที่ใช้งานจริง:

 export NODE_ENV=production; node server/app.js &

ตอนนี้ชี้เบราว์เซอร์คอมพิวเตอร์ของคุณไปที่ที่อยู่ IP ของอุปกรณ์เพื่อตรวจสอบว่าใช้งานได้หรือไม่

ต้องการคุณมีเซิร์ฟเวอร์ dev ที่คุณสามารถโทรหาของคุณเองได้หรือไม่? คุณทำได้ด้วย #RaspberryPi
ทวีต

กำหนดค่า Nginx Reverse Proxy

เหลืออีกหนึ่งขั้นตอนในการทำให้แอปพลิเคชันของคุณสามารถเข้าถึงได้จากภายนอก แม้ว่า Nginx กำลังฟังบนพอร์ต 80 ซึ่งจะได้รับคำขอ HTTP สำหรับ Pi ของคุณ แอปพลิเคชัน Node เองก็กำลังฟังบนพอร์ตอื่น (เช่น พอร์ต 8080) ดังนั้น คุณต้องกำหนดค่า Nginx ให้ทำหน้าที่เป็น reverse proxy รับรู้คำขอที่มีไว้สำหรับแอปพลิเคชันของคุณ และส่งไปยัง Node

Nginx เก็บไฟล์การกำหนดค่าสำหรับแต่ละแอปพลิเคชันที่ให้บริการในโฟลเดอร์ sites-available :

 cd /etc/nginx/sites-available/

ที่นี่ คุณสามารถคัดลอกไฟล์การกำหนดค่า default และแก้ไขได้ตามสะดวก:

 sudo cp default my-app sudo nano my-app

ไฟล์การกำหนดค่าสุดท้ายควรมีลักษณะดังนี้ โดย Nginx ทำหน้าที่เป็นพร็อกซีไปยังเซิร์ฟเวอร์ Node.js:

 server { listen 80; root /var/www/my-app/; # identifies the location of the application you are configuring server_name my-app.dev; # identifies the hostname used by this application's traffic location / { proxy_pass http://localhost:8080/; # configures the back-end destination for this traffic } }

เพื่อเปิดใช้งานการกำหนดค่านี้ คุณต้องสร้าง symlink ในโฟลเดอร์ที่ sites-enabled โดยที่ Nginx จะค้นหาการกำหนดค่าที่ใช้งานอยู่ระหว่างรันไทม์:

 sudo ln -s /etc/nginx/sites-available/my-app /etc/nginx/sites-enabled/my-app

และโหลดบริการใหม่เพื่อเปิดใช้งานการเปลี่ยนแปลงเหล่านี้:

 sudo service nginx reload

ณ จุดนี้ แอปพลิเคชันของคุณพร้อมที่จะรับทราฟฟิก HTTP สำหรับโดเมน my-app.dev (ต้องขอบคุณ server_name my-app.dev directive ที่คุณกำหนดค่าไว้ด้านบน) ปัญหาสุดท้ายที่คุณต้องแก้ไขคือวิธีทำให้การรับส่งข้อมูลที่คุณส่งจากภายนอกตรงกับชื่อโดเมนนี้ แม้ว่าคุณจะสามารถซื้อชื่อโดเมนและชี้ไปที่ IP ของคุณได้ แต่ไฟล์ hosts ก็เข้ามาช่วยเหลือและทำให้ไม่จำเป็น

บนเวิร์กสเตชันที่คุณจะเข้าถึงไซต์ได้ เพียงเพิ่มที่อยู่ IP ภายนอกของเราเตอร์ของคุณ และจับคู่กับชื่อโฮสต์ my-app.dev ทราฟฟิก HTTP ใดๆ ที่คุณสร้างสำหรับ my-app.dev จะถูกส่งตรงไปยังเราเตอร์ของคุณ พร้อมชื่อโฮสต์ที่ถูกต้องในส่วนหัวของ Host HTTP

บน Windows ด้วยสิทธิ์ของผู้ดูแลระบบ คุณสามารถแก้ไขไฟล์ที่อยู่ใน c:\windows\system32\drivers\etc\hosts ด้วยแผ่นจดบันทึก บน Linux และ Mac คุณสามารถใช้เทอร์มินัลกับ sudo nano /etc/hosts และ sudo nano /private/etc/hosts ตามลำดับ

 ## # Host Database # # localhost is used to configure the loopback interface # when the system is booting. Do not change this entry. ## 127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost 212.124.126.242 my-app.dev # add your host name to the list

อะไรต่อไป?

เมื่อทุกอย่างได้รับการตั้งค่าแล้ว คุณสามารถปรับใช้แอปพลิเคชันได้มากเท่าที่คุณต้องการกับ Raspberry Pi ของคุณ และติดตั้งตลอดไปหรือ pm2 เพื่อให้เซิร์ฟเวอร์ Node.js ของคุณใช้งานได้

และจำไว้ว่าหากมีสิ่งผิดปกติเกิดขึ้น คุณสามารถล้างการ์ด SD แล้วเริ่มใหม่ได้ตั้งแต่ต้น!

เซิร์ฟเวอร์การพัฒนา Raspberry Pi ใช้งานได้จริง

ที่เกี่ยวข้อง: ควบคุมสภาพอากาศของคุณด้วยการสอนเทอร์โมสตัท Raspberry Pi นี้