Spaces:
Running
Running
| 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() |