Compare commits

..

7 Commits

7 changed files with 30 additions and 5 deletions
+3
View File
@@ -5,6 +5,9 @@ WORKDIR /app
# Bricktracker
COPY . .
# Fix line endings and set executable permissions for entrypoint script
RUN sed -i 's/\r$//' entrypoint.sh && chmod +x entrypoint.sh
# Python library requirements
RUN pip --no-cache-dir install -r requirements.txt
+2 -2
View File
@@ -1,6 +1,6 @@
# This need to be first
import eventlet
eventlet.monkey_patch()
import gevent.monkey
gevent.monkey.patch_all()
import logging # noqa: E402
+1 -1
View File
@@ -70,7 +70,7 @@ class BrickSocket(object):
*args,
**kwargs,
path=app.config['SOCKET_PATH'],
async_mode='eventlet',
async_mode='gevent',
)
# Store the socket in the app config
+4 -1
View File
@@ -25,6 +25,7 @@ def update() -> Response:
BrickSet(),
minifigure=BrickMinifigure(record={
'set_img_url': None,
'image': None,
})
).download()
@@ -33,7 +34,9 @@ def update() -> Response:
BrickSet(),
part=BrickPart(record={
'part_img_url': None,
'part_img_url_id': None
'part_img_url_id': None,
'image_id': None,
'image': None,
})
).download()
+1 -1
View File
@@ -13,4 +13,4 @@ then
fi
# Execute the WSGI server
gunicorn --bind "${BK_SERVER}:${BK_PORT}" "app:create_app()" --worker-class "eventlet" "$@"
gunicorn --bind "${BK_HOST}:${BK_PORT}" "wsgi:application" --worker-class "gevent" --workers 1 "$@"
+1
View File
@@ -2,6 +2,7 @@ eventlet
flask
flask_socketio
flask-login
gevent
gunicorn
humanize
jinja2
+18
View File
@@ -0,0 +1,18 @@
#!/usr/bin/env python3
"""
WSGI entry point for BrickTracker - Production Docker deployment
This ensures proper gevent monkey patching before any imports
"""
# CRITICAL: Monkey patch must be first, before ANY other imports
import gevent.monkey
gevent.monkey.patch_all()
# Now import the regular app factory
from app import create_app
# Create the application - this will be a BrickSocket instance
app_instance = create_app()
# For gunicorn, we need the Flask app, not the BrickSocket wrapper
application = app_instance.app if hasattr(app_instance, 'app') else app_instance