File size: 767 Bytes
6edd6a9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
b38da0d
6edd6a9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import os 
import subprocess 
import sys 
import time 
 
def check_port_available(port):
    """检查端口是否被占用"""
    import socket 
    try:
        with socket.socket(socket.AF_INET,  socket.SOCK_STREAM) as s:
            s.bind(("0.0.0.0",  port))
        return True 
    except OSError:
        return False 
 
def start_node_red():
    # 设置 Node-RED 的用户目录 
    user_dir = "/usr/src/node-red"
    
    # 检查端口是否可用 
    port = 1880 
    if not check_port_available(port):
        print(f"Port {port} is already in use. Exiting...")
        sys.exit(1) 
    
    # 启动 Node-RED 
    print("Starting Node-RED...")
    subprocess.run(["node-red",  "--userDir", user_dir])
 
if __name__ == "__main__":
    start_node_red()