#!/usr/bin/env bash # 生产启动(Linux / 正式环境):gunicorn + UvicornWorker + 日志文件 set -e cd "$(dirname "$0")/.." if [ ! -d .venv ]; then echo "未找到 .venv,请先创建虚拟环境并安装依赖" exit 1 fi mkdir -p logs source .venv/bin/activate PORT="${PORT:-5889}" echo "启动 EasyScreen 生产服务,端口 $PORT ..." gunicorn app.main:app \ -k uvicorn.workers.UvicornWorker \ -b 0.0.0.0:$PORT \ -w 2 \ --daemon \ --pid logs/gunicorn.pid \ --access-logfile logs/access.log \ --error-logfile logs/error.log sleep 2 if [ -f logs/gunicorn.pid ]; then echo "已启动 (pid $(cat logs/gunicorn.pid)),日志: logs/access.log" else echo "启动失败,请查看 logs/error.log" fi