低内存 VPS(如 RackNerd)在 Docker 构建 Next.js 时容易因内存不足(OOM)导致构建失败。添加 Swap 可以让系统在物理内存不足时使用磁盘作为临时内存。
操作步骤
SSH 到服务器后执行:
# 1. 查看当前内存和 swap 状态
free -h
# 2. 创建 2GB swap 文件
sudo fallocate -l 2G /swapfile
# 3. 设置权限(仅 root 可读写)
sudo chmod 600 /swapfile
# 4. 格式化为 swap
sudo mkswap /swapfile
# 5. 启用 swap
sudo swapon /swapfile
# 6. 设置开机自动启用(写入 fstab)
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
# 7. 验证是否生效
free -h验证结果
执行 free -h 后应看到类似输出:
total used free shared buff/cache available
Mem: 1.9Gi xxx xxx xxx xxx xxx
Swap: 2.0Gi 0B 2.0GiSwap 行显示 2.0Gi 即表示配置成功。
删除 Swap
如不再需要,执行:
sudo swapoff /swapfile
sudo rm /swapfile
# 并从 /etc/fstab 中删除对应行
sudo sed -i '/swapfile/d' /etc/fstab