Spaces:
Paused
Paused
Upload 38 files
Browse files- entrypoint.sh +5 -3
- requirements.txt +8 -8
entrypoint.sh
CHANGED
|
@@ -84,24 +84,26 @@ if [ -z "$API_KEY" ]; then
|
|
| 84 |
fi
|
| 85 |
|
| 86 |
# 启动Flask应用
|
| 87 |
-
echo -e "${GREEN}Starting Flask application...${NC}"
|
| 88 |
|
| 89 |
if [ -n "$WORKERS" ]; then
|
| 90 |
-
echo "Using $WORKERS workers"
|
| 91 |
DEFAULT_WORKERS="$WORKERS"
|
| 92 |
else
|
| 93 |
# 计算合适的worker数量 (默认根据CPU数量,但最少2个,最多17个)
|
| 94 |
DEFAULT_WORKERS=$(($(nproc) * 2 + 1))
|
| 95 |
[ $DEFAULT_WORKERS -lt 2 ] && DEFAULT_WORKERS=2
|
| 96 |
[ $DEFAULT_WORKERS -gt 17 ] && DEFAULT_WORKERS=17
|
| 97 |
-
echo "Using $DEFAULT_WORKERS workers"
|
| 98 |
fi
|
| 99 |
|
| 100 |
# 增加超时时间,确保长连接能正常工作
|
| 101 |
# 增加记录器配置使错误更容易诊断
|
|
|
|
| 102 |
cd /app && gunicorn \
|
| 103 |
--bind 0.0.0.0:${FLASK_PORT} \
|
| 104 |
--workers ${DEFAULT_WORKERS} \
|
|
|
|
| 105 |
--timeout 300 \
|
| 106 |
--access-logfile - \
|
| 107 |
--error-logfile - \
|
|
|
|
| 84 |
fi
|
| 85 |
|
| 86 |
# 启动Flask应用
|
| 87 |
+
echo -e "${GREEN}Starting Flask application with gevent worker for WebSocket support...${NC}"
|
| 88 |
|
| 89 |
if [ -n "$WORKERS" ]; then
|
| 90 |
+
echo "Using $WORKERS workers (user defined)"
|
| 91 |
DEFAULT_WORKERS="$WORKERS"
|
| 92 |
else
|
| 93 |
# 计算合适的worker数量 (默认根据CPU数量,但最少2个,最多17个)
|
| 94 |
DEFAULT_WORKERS=$(($(nproc) * 2 + 1))
|
| 95 |
[ $DEFAULT_WORKERS -lt 2 ] && DEFAULT_WORKERS=2
|
| 96 |
[ $DEFAULT_WORKERS -gt 17 ] && DEFAULT_WORKERS=17
|
| 97 |
+
echo "Using $DEFAULT_WORKERS workers (auto calculated)"
|
| 98 |
fi
|
| 99 |
|
| 100 |
# 增加超时时间,确保长连接能正常工作
|
| 101 |
# 增加记录器配置使错误更容易诊断
|
| 102 |
+
# 指定 -k gevent 来使用 gevent 工作进程,支持 WebSocket
|
| 103 |
cd /app && gunicorn \
|
| 104 |
--bind 0.0.0.0:${FLASK_PORT} \
|
| 105 |
--workers ${DEFAULT_WORKERS} \
|
| 106 |
+
-k gevent \
|
| 107 |
--timeout 300 \
|
| 108 |
--access-logfile - \
|
| 109 |
--error-logfile - \
|
requirements.txt
CHANGED
|
@@ -1,9 +1,9 @@
|
|
| 1 |
-
flask==2.0.1
|
| 2 |
-
gunicorn==20.1.0
|
| 3 |
-
requests==2.28.1
|
| 4 |
-
Werkzeug==2.0.1
|
| 5 |
-
PyYAML==6.0.1
|
| 6 |
-
# pyyaml==6.0 # 已通过 apk 安装
|
| 7 |
-
# 添加与 Flask==2.0.1 兼容的版本
|
| 8 |
-
flask-sockets
|
| 9 |
gevent
|
|
|
|
| 1 |
+
flask==2.0.1
|
| 2 |
+
gunicorn==20.1.0
|
| 3 |
+
requests==2.28.1
|
| 4 |
+
Werkzeug==2.0.1
|
| 5 |
+
PyYAML==6.0.1
|
| 6 |
+
# pyyaml==6.0 # 已通过 apk 安装
|
| 7 |
+
# 添加与 Flask==2.0.1 兼容的版本
|
| 8 |
+
flask-sockets
|
| 9 |
gevent
|