WuGuan commited on
Commit
6edd6a9
·
verified ·
1 Parent(s): d4dcf78

Update app.py

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