Fix 502 after update: safe startup, single DB init, healthcheck

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-06 22:58:09 +03:00
parent 82fdb60f5e
commit 5353c82066
10 changed files with 107 additions and 52 deletions
+9 -18
View File
@@ -21,7 +21,7 @@ def load_user(user_id):
return db.session.get(User, int(user_id))
def create_app():
def create_app(setup_database=True):
app = Flask(__name__)
app.config["SECRET_KEY"] = os.getenv("SECRET_KEY", "dev-secret-change-me")
@@ -63,7 +63,10 @@ def create_app():
def inject_banners():
from app.banner_service import get_banners_by_position
return {"site_banners": get_banners_by_position()}
try:
return {"site_banners": get_banners_by_position()}
except Exception:
return {"site_banners": {}}
with app.app_context():
from app.models import ( # noqa: F401
@@ -79,23 +82,11 @@ def create_app():
)
db.create_all()
from app.bootstrap import (
create_first_admin,
ensure_default_group,
ensure_group_limit_columns,
ensure_photo_storage_column,
ensure_schema,
ensure_site_settings,
)
from app.folders import ensure_folder_schema
ensure_schema()
ensure_default_group(app)
ensure_group_limit_columns()
ensure_folder_schema()
ensure_site_settings(app)
ensure_photo_storage_column()
create_first_admin(app)
if setup_database and os.getenv("SKIP_DB_INIT") != "1":
from app.bootstrap import run_database_setup
run_database_setup(app)
return app