+1
This commit is contained in:
75
容器化相关文件/手动测试实验/start.sh
Normal file
75
容器化相关文件/手动测试实验/start.sh
Normal file
@@ -0,0 +1,75 @@
|
||||
|
||||
# chmod +x start.sh
|
||||
#-----------------------------------------
|
||||
|
||||
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
# 打印启动环境
|
||||
echo "[*] Starting app with APP_ENV=${APP_ENV}"
|
||||
|
||||
# 日志路径(宿主机会挂载)
|
||||
LOG_DIR="/app/logs"
|
||||
mkdir -p "$LOG_DIR"
|
||||
|
||||
# 动态生成日志文件名
|
||||
LOGFILE="${LOG_DIR}/lessie_sourcing_agents_$(date +'%Y%m%d_%H%M%S').log"
|
||||
LATEST_LOG="${LOG_DIR}/lessie_sourcing_agents_latest.log"
|
||||
|
||||
# 启动命令
|
||||
echo "[*] Launching Gunicorn..."
|
||||
nohup env APP_ENV=${APP_ENV} \
|
||||
gunicorn -w 4 -k uvicorn.workers.UvicornWorker \
|
||||
-b 0.0.0.0:7001 --timeout 300 dialogue.app:app \
|
||||
--max-requests 500 --max-requests-jitter 50 \
|
||||
> "$LOGFILE" 2>&1 &
|
||||
|
||||
# 建立软链方便查看最新日志
|
||||
ln -sf "$LOGFILE" "$LATEST_LOG"
|
||||
|
||||
echo "[*] App started. Logs: $LATEST_LOG"
|
||||
|
||||
# 前台挂起(防止容器退出)
|
||||
tail -F "$LOGFILE"
|
||||
|
||||
|
||||
|
||||
|
||||
#-----------------------------------------
|
||||
#!/bin/bash
|
||||
#脚本出错立即退出,防止容器假活
|
||||
set -e
|
||||
|
||||
# 进入项目目录
|
||||
cd /app
|
||||
|
||||
# 日志目录
|
||||
LOG_DIR="/app/logs"
|
||||
mkdir -p "$LOG_DIR"
|
||||
|
||||
# 日志文件(同时软链一个 latest.log 方便定位)
|
||||
LOG_FILE="${LOG_DIR}/lessie_sourcing_agents_$(date +'%Y%m%d_%H%M%S').log"
|
||||
ln -sf "$LOG_FILE" "${LOG_DIR}/lessie_sourcing_agents_latest.log"
|
||||
|
||||
# 环境变量(默认 prod,可通过 docker run -e APP_ENV=s1 覆盖)
|
||||
APP_ENV="${APP_ENV:-prod}"
|
||||
echo "[INFO] Starting app in environment: ${APP_ENV}"
|
||||
|
||||
# Python 环境检查
|
||||
echo "[INFO] Python version:"
|
||||
python3 --version
|
||||
|
||||
# 启动 Gunicorn
|
||||
# 输出到 stdout 的同时 tee 一份到日志文件
|
||||
echo "[INFO] Launching Gunicorn..."
|
||||
exec gunicorn -w ${cfg_gunicornWorkers:-4} \
|
||||
-k uvicorn.workers.UvicornWorker \
|
||||
-b 0.0.0.0:${cfg_port:-7001} \
|
||||
--timeout 300 \
|
||||
--max-requests 500 \
|
||||
--max-requests-jitter 50 \
|
||||
--access-logfile - \
|
||||
--error-logfile - \
|
||||
dialogue.app:app \
|
||||
2>&1 | tee -a "$LOG_FILE"
|
||||
Reference in New Issue
Block a user