arm的ubuntu启动node

在arm上的ubuntu使用npm run dev的时候,在package.json中的scripts的dev中配置0.0.0.0的时候,启动会报错

根本原因:ARM Ubuntu 上的 Node.js os.networkInterfaces() 系统调用有权限问题。

只能使用localhost,推荐使用nginx转发或者docker,下面以nginx配置为例:

1. 安装 nginx

sudo apt install nginx

2. 创建 nginx 配置

sudo vim /etc/nginx/sites-available/vite-proxy.conf

bash 复制代码
server {
    # 外面访问5174转发到机器上的5173上
    listen 5174;
    listen [::]:5174;
    server_name _;
    
    location / {
    		# 5173是node启动的端口
        proxy_pass http://localhost:5173;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

3. 修改 package.json

bash 复制代码
"scripts": {
  "dev": "vite --host localhost"
}

4. 启用配置

bash 复制代码
sudo ln -s /etc/nginx/sites-available/vite-proxy /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

5. 现在其他机器可以通过 http://你的ARM设备IP:3000 访问

6.如果做了外网域名访问,还需要修改vite.config.ts或者vite.config.js文件

bash 复制代码
在server中增加域名配置
server: {
      port: 5173,
      host: true,
      // 允许的域名列表
      allowedHosts: [
        // 你的域名
        'abcd.com',
        'www.abcd.com',

        // 本地访问
        'localhost',
        '127.0.0.1',
        // 通配符匹配域名
        '.abcd.com'
      ],
}

7.启动node和nginx

复制代码
npm run dev
service nginx start
相关推荐
且从容.1 小时前
ubuntu安装flink
linux·ubuntu·flink
爱和冰阔落3 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
程序员沉梦听雨3 小时前
WSL2的安装与使用
linux·wsl
微小的鱼3 小时前
Linux的渲染与显示系统链路
android·java·linux
lisanmengmeng3 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮4 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
Linux-lucky16 小时前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu
禁默16 小时前
启元 Q1 二次开发实践:Ubuntu 部署与仿真验证,从 PrimeConsole 到 ROS 2 Humble + RViz
linux·运维·ubuntu
skywalk816317 小时前
把 去也网站 从 Ubuntu 搬到 FreeBSD:一次 Service Jail + nginx 的部署实录
linux·运维·nginx·ubuntu·freebsd
爱莉希雅&&&19 小时前
GitLab 完整学习笔记
linux·运维·服务器