36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
import subprocess
|
|
import os
|
|
import sys
|
|
|
|
def start_server():
|
|
project_dir = os.path.dirname(os.path.abspath(__file__))
|
|
command = [
|
|
"gunicorn",
|
|
"--worker-class", "eventlet",
|
|
"-w", "1",
|
|
"--bind", "0.0.0.0:5000",
|
|
"wsgi:app"
|
|
]
|
|
print("=============================================")
|
|
print("=== AstraOS Produktionsserver wird gestartet ===")
|
|
print(f"=== Arbeitsverzeichnis: {project_dir}")
|
|
print(f"=== Befehl: {' '.join(command)}")
|
|
print("=============================================")
|
|
print("Drücken Sie STRG+C, um den Server zu beenden.")
|
|
try:
|
|
subprocess.run(command, cwd=project_dir, check=True)
|
|
except FileNotFoundError:
|
|
print("\n[FEHLER] 'gunicorn' wurde nicht gefunden.")
|
|
print("Stellen Sie sicher, dass Gunicorn installiert ist ('pip install gunicorn').")
|
|
sys.exit(1)
|
|
except subprocess.CalledProcessError as e:
|
|
print(f"\n[FEHLER] Der Server wurde unerwartet beendet: {e}")
|
|
sys.exit(1)
|
|
except KeyboardInterrupt:
|
|
print("\nServer wurde vom Benutzer gestoppt.")
|
|
sys.exit(0)
|
|
|
|
if __name__ == "__main__":
|
|
start_server()
|
|
|