|
|
| """
|
| Hugging Face Spaces 启动脚本
|
| 用于启动 Go 编写的 Opus API 服务
|
| """
|
| import os
|
| import subprocess
|
| import sys
|
| import signal
|
|
|
| def signal_handler(sig, frame):
|
| """处理终止信号"""
|
| print("\n正在关闭服务...")
|
| sys.exit(0)
|
|
|
| def main():
|
| """启动 Go 服务"""
|
|
|
| signal.signal(signal.SIGINT, signal_handler)
|
| signal.signal(signal.SIGTERM, signal_handler)
|
|
|
| print("=" * 50)
|
| print("启动 Opus API 服务")
|
| print("=" * 50)
|
|
|
|
|
| if not os.path.exists("./server"):
|
| print("错误: 找不到服务器可执行文件 './server'")
|
| sys.exit(1)
|
|
|
|
|
| port = os.getenv("PORT", "7860")
|
| print(f"端口: {port}")
|
| print(f"日志目录: /app/logs")
|
| print("=" * 50)
|
|
|
| try:
|
|
|
| process = subprocess.Popen(
|
| ["./server"],
|
| stdout=sys.stdout,
|
| stderr=sys.stderr
|
| )
|
|
|
|
|
| process.wait()
|
|
|
| except Exception as e:
|
| print(f"启动服务时出错: {e}")
|
| sys.exit(1)
|
|
|
| if __name__ == "__main__":
|
| main() |