Files
project-panel/app.py
T

53 lines
1.4 KiB
Python
Raw Normal View History

2026-04-11 13:06:15 +08:00
#!/usr/bin/env python3
"""
2026-06-01 12:30:24 +08:00
项目服务管理面板 - 主入口
模块化重构版本 v3.4.0
2026-04-11 13:06:15 +08:00
"""
2026-06-01 12:30:24 +08:00
from flask import Flask
from config import APP_NAME, APP_VERSION, APP_PORT
from database import init_db, close_db
from utils import log_message
from routes_cron import register_cron_routes
from routes_system import register_system_routes
from routes_config import register_config_routes
from routes_email import register_email_routes
from routes_project import register_project_routes
2026-06-01 18:01:17 +08:00
from routes_docker import register_docker_routes
from routes_discovery import register_discovery_routes
2026-06-01 12:30:24 +08:00
from templates import get_html_template
2026-04-11 13:06:15 +08:00
2026-06-01 12:30:24 +08:00
# 创建 Flask 应用
2026-04-11 13:06:15 +08:00
app = Flask(__name__)
2026-06-01 12:30:24 +08:00
def init_app():
"""初始化应用"""
# 注册数据库钩子
app.teardown_appcontext(close_db)
2026-06-01 12:30:24 +08:00
# 注册路由
register_cron_routes(app)
register_system_routes(app)
register_config_routes(app)
register_email_routes(app)
register_project_routes(app)
2026-06-01 18:01:17 +08:00
register_docker_routes(app)
register_discovery_routes(app)
2026-06-01 12:30:24 +08:00
# 主页路由
@app.route('/')
def index():
return get_html_template()
2026-06-01 12:30:24 +08:00
# 初始化数据库
init_db()
2026-06-01 12:30:24 +08:00
log_message(f"{APP_NAME} {APP_VERSION} 初始化完成")
2026-04-11 13:06:15 +08:00
if __name__ == '__main__':
2026-06-01 12:30:24 +08:00
init_app()
log_message(f"启动 {APP_NAME},端口: {APP_PORT}")
app.run(host='0.0.0.0', port=APP_PORT, debug=False)