修改路径,从src放到根目录
This commit is contained in:
86
run.py
Normal file
86
run.py
Normal file
@@ -0,0 +1,86 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
FastAPI应用启动脚本
|
||||
"""
|
||||
|
||||
import uvicorn
|
||||
import argparse
|
||||
from config import settings
|
||||
|
||||
|
||||
def main():
|
||||
"""
|
||||
主函数:解析命令行参数并启动服务器
|
||||
"""
|
||||
parser = argparse.ArgumentParser(description="algorithm service")
|
||||
|
||||
parser.add_argument(
|
||||
"--host",
|
||||
type=str,
|
||||
default="0.0.0.0",
|
||||
help="监听主机 (默认: 0.0.0.0)"
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--port",
|
||||
type=int,
|
||||
default=8000,
|
||||
help="监听端口 (默认: 8000)"
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--reload",
|
||||
action="store_true",
|
||||
help="启用热重载 (开发模式)"
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--workers",
|
||||
type=int,
|
||||
default=1,
|
||||
help="工作进程数 (生产模式)"
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--log-level",
|
||||
type=str,
|
||||
default="info",
|
||||
choices=["debug", "info", "warning", "error", "critical"],
|
||||
help="日志级别"
|
||||
)
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
# 根据环境选择配置
|
||||
if settings.DEBUG:
|
||||
print("🔧 开发模式")
|
||||
uvicorn_config = {
|
||||
"host": args.host,
|
||||
"port": args.port,
|
||||
"reload": True,
|
||||
"log_level": "debug",
|
||||
"workers": 1
|
||||
}
|
||||
else:
|
||||
print("🚀 生产模式")
|
||||
uvicorn_config = {
|
||||
"host": args.host,
|
||||
"port": args.port,
|
||||
"reload": False,
|
||||
"log_level": args.log_level,
|
||||
"workers": args.workers
|
||||
}
|
||||
|
||||
# 启动服务器
|
||||
print(f"🌐 启动服务器: http://{args.host}:{args.port}")
|
||||
print(f"📚 API文档: http://{args.host}:{args.port}/docs")
|
||||
print(f"📊 健康检查: http://{args.host}:{args.port}/health")
|
||||
|
||||
uvicorn.run(
|
||||
"app:app",
|
||||
**uvicorn_config
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user