Added gunicorn

This commit is contained in:
Sviatoslav Tsariov Yurievich 2025-07-01 10:36:17 +03:00
parent eed864281e
commit 72a6080830
3 changed files with 8 additions and 27 deletions

View File

@ -4,10 +4,10 @@ WORKDIR /app
COPY requirements.txt /app
RUN pip3 install -r requirements.txt
RUN apt-get update && apt-get install -y libevent-dev
RUN apt-get update && apt-get install -y libevent-dev gcc
RUN pip3 install gunicorn==21.2.0 gevent-websocket==0.10.1
COPY . .
ENV FLASK_APP=src/app.py
CMD [ "python3", "-m" , "flask", "run", "--host=0.0.0.0", "--port=5000"]
CMD ["gunicorn", "-b", "0.0.0.0:5000", "-k", "geventwebsocket.gunicorn.workers.GeventWebSocketWorker", "--workers", "1", "src.app:app"]

View File

@ -30,14 +30,9 @@ if db is not None:
else:
print('Failed to connect to MongoDB')
def create_app():
return app
if __name__ == '__main__':
#app.run(debug=True)
#socketio.run(app, host=Config.APP_HOST, debug=False)
run_simple(
Config.APP_HOST,
5000,
socketio.run_handler(app),
use_reloader=False,
use_debugger=False,
use_evalex=False
)
socketio.run(app, host=Config.APP_HOST, debug=False)

View File

@ -4,18 +4,4 @@ from flask_jwt_extended import JWTManager
app = Flask(__name__)
jwt = JWTManager(app)
@app.before_request
def handle_preflight():
if request.method == "OPTIONS":
response = app.make_default_options_response()
headers = {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE, OPTIONS',
'Access-Control-Allow-Headers': 'Content-Type, Authorization'
}
for k, v in headers.items():
response.headers[k] = v
return response
socketio = SocketIO(app, async_mode='gevent', cors_allowed_origins="*")