几年前,我入手了一台raspberry pi model b,并决定在其上搭建一个网络服务器。

虽然看起来很简单,但实际上Raspberry Pi本质上是一台微型电脑,需要安装操作系统才能运行,这与Arduino等其他开发板不同,后者无需操作系统即可运行程序。
以下是如何在Raspberry Pi上从零开始搭建Node.js Web服务器的步骤:
-
安装Raspberry Pi Imager
Raspberry Pi Imager是一款用于将操作系统写入microSD卡的工具。
虽然还有其他操作系统可选,例如Debian、Ubuntu等,但为了获得最佳的硬件兼容性,Raspberry Pi官方推荐使用其官方操作系统。
-
安装Raspberry Pi操作系统
打开Raspberry Pi Imager,选择:
- Raspberry Pi设备: 选择您的型号。
- 操作系统: 选择推荐的选项。
- 存储设备: 选择您的microSD卡。

我使用了默认设置,完成后,显示如下信息:

-
连接硬件: 将microSD卡插入Raspberry Pi主板。
连接其他外设,例如:
- 鼠标
- 键盘
- 显示器
- 以太网线
- 电源线(建议最后连接)。

建议最后连接电源线。注意,microSD卡插槽位于主板的另一侧。

Raspberry Pi OS启动后,您将看到桌面欢迎界面,如下所示:


第一步】:将安装包中所有的文件夹和文件用ftp工具以二进制方式上传至服务器空间;(如果您不知如何设置ftp工具的二进制方式,可以查看:(http://www.shopex.cn/support/qa/setup.help.717.html)【第二步】:在浏览器中输入 http://您的商店域名/install 进行安装界面进行安装即可。【第二步】:登录后台,工具箱里恢复数据管理后台是url/sho
这意味着您的Raspberry Pi操作系统已准备就绪。
-
更新系统
系统启动后,需要一些时间(在我的情况下大约2分钟)来启动并显示桌面UI。准备就绪后,打开终端并运行以下命令:
- 更新系统软件包
sudo apt-get update -y
- 升级已安装的软件包
sudo apt-get dist-upgrade -y
-
安装Node.js
sudo apt-get install nodejs -y
同时安装npm:
sudo apt-get install npm -y
版本验证:
$ node -v v18.19.0 $ npm -v 9.2.0
-
安装Express.js
Express.js是一个简化Web服务器搭建的npm包。我使用了它的生成器并保留了默认选项:
npx express-generator
- 接受默认设置
-
安装npm包
npm install
-
运行服务器
npm start
默认情况下,Web服务器运行在3000端口。要从其他设备访问它,您需要Raspberry Pi的IP地址。例如,我的Raspberry Pi的IP地址是192.168.100.239,但您的IP地址可能不同。
-
从其他设备访问Web服务器
在您的电脑上打开浏览器,将IP地址和端口号(例如,http://192.168.100.239:3000)粘贴到地址栏中。您应该看到如下内容:
http://192.168.100.239:3000/

如果一切配置正确,您的Express应用现在可以从同一网络上的任何设备访问。
由于我使用的是Raspberry Pi Model B,其RAM和CPU性能有限,因此每个命令的执行都需要一些时间。对于这种低规格的设备来说,安装依赖项或启动服务器等操作需要更长时间是正常的。
-
结论
Raspberry Pi本质上是一台微型电脑,可以与物联网设备无缝集成。您可以将传感器或几乎任何电子设备连接到主板上。
虽然Model B并非性能最强大的型号,但现在已经有更先进的主板可供选择,并且可以肯定的是,Raspberry Pi团队将继续改进他们的设备。
-
额外说明
起初,我尝试在Raspberry Pi上运行Next.js,但遇到了以下错误:
FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory Aborted
因此,我最终选择了Express.js。请记住,这是一个资源有限的较旧型号的主板。现代主板应该具有更强大的功能。最棒的是,因为它运行Linux操作系统,所以您可以安装几乎任何软件包。









