2 Commits

Author SHA1 Message Date
65eedff61c Merge branch 'dev' for v1.3
All checks were successful
Build Docker / Build Image (push) Successful in 45s
2025-02-05 12:04:48 +11:00
461e2cdbe9 Merge branch 'dev'
All checks were successful
Build Docker / Build Image (push) Successful in 38s
2025-02-04 15:35:41 +11:00
3 changed files with 28 additions and 45 deletions

4
.gitignore vendored
View File

@@ -13,6 +13,4 @@ plugins/signatures.json
user_data/ user_data/
customPlugins/ customPlugins/
cache/ cache/
build/
dist/

View File

@@ -8,5 +8,4 @@ cryptography
requests-doh requests-doh
Flask-QRcode Flask-QRcode
PySocks PySocks
python-git-info python-git-info
waitress

View File

@@ -1,52 +1,38 @@
import os from flask import Flask
import sys
import platform
from main import app from main import app
from waitress import serve import main
from gunicorn.app.base import BaseApplication
import os
threads = 4 class GunicornApp(BaseApplication):
def __init__(self, app, options=None):
self.options = options or {}
self.application = app
super().__init__()
def gunicornServer(): def load_config(self):
from gunicorn.app.base import BaseApplication for key, value in self.options.items():
class GunicornApp(BaseApplication): if key in self.cfg.settings and value is not None:
def __init__(self, app, options=None): self.cfg.set(key.lower(), value)
self.options = options or {}
self.application = app
super().__init__()
def load_config(self): def load(self):
for key, value in self.options.items(): return self.application
if key in self.cfg.settings and value is not None:
self.cfg.set(key.lower(), value)
def load(self): if __name__ == '__main__':
return self.application workers = 1
threads = 2
if workers is None:
workers = 1
if threads is None:
threads = 2
workers = int(workers)
threads = int(threads)
options = { options = {
'bind': '0.0.0.0:5000', 'bind': '0.0.0.0:5000',
'workers': 2, 'workers': workers,
'threads': threads, 'threads': threads,
} }
gunicorn_app = GunicornApp(app, options) gunicorn_app = GunicornApp(app, options)
print(f'Starting server with Gunicorn on {platform.system()} with {threads} threads...', flush=True) print('Starting server with ' + str(workers) + ' workers and ' + str(threads) + ' threads', flush=True)
gunicorn_app.run() gunicorn_app.run()
if __name__ == '__main__':
# Check if --gunicorn is in the command line arguments
if "--gunicorn" in sys.argv:
gunicornServer()
sys.exit()
print(f'Starting server with Waitress on {platform.system()} with {threads} threads...', flush=True)
print(f'Press Ctrl+C to stop the server', flush=True)
print(f'Serving on http://0.0.0.0:5000/', flush=True)
serve(app, host="0.0.0.0", port=5000, threads=threads)