|
|
#!/bin/bash |
|
|
|
|
|
|
|
|
|
|
|
echo "π Starting Kronos Web UI in Docker..." |
|
|
echo "======================================" |
|
|
|
|
|
|
|
|
if [ ! -f "app.py" ]; then |
|
|
echo "β app.py not found, please check the working directory" |
|
|
exit 1 |
|
|
fi |
|
|
|
|
|
|
|
|
export PYTHONPATH=/app |
|
|
export FLASK_APP=webui/app.py |
|
|
export FLASK_ENV=production |
|
|
|
|
|
|
|
|
mkdir -p prediction_results |
|
|
mkdir -p model/data |
|
|
|
|
|
|
|
|
python3 -c " |
|
|
try: |
|
|
from model import Kronos, KronosTokenizer, KronosPredictor |
|
|
print('β
Kronos model library available') |
|
|
except ImportError as e: |
|
|
print(f'β οΈ Kronos model library not available: {e}') |
|
|
print(' Will use simulated data for demonstration') |
|
|
" |
|
|
|
|
|
|
|
|
echo "π Starting Flask server on port 7860..." |
|
|
echo "Access URL: http://localhost:7860" |
|
|
echo "Press Ctrl+C to stop server" |
|
|
echo "" |
|
|
|
|
|
|
|
|
if command -v gunicorn &> /dev/null; then |
|
|
echo "Using Gunicorn for production..." |
|
|
exec gunicorn --bind 0.0.0.0:7860 --workers 2 --timeout 120 --access-logfile - --error-logfile - app:app |
|
|
else |
|
|
echo "Using Flask development server..." |
|
|
exec python3 app.py |
|
|
fi |
|
|
|