jxdn123 commited on
Commit
820bf96
·
verified ·
1 Parent(s): 522b1db

Update run.sh

Browse files
Files changed (1) hide show
  1. run.sh +6 -24
run.sh CHANGED
@@ -1,37 +1,19 @@
1
  #!/usr/bin/env sh
2
  set -e
3
 
4
- # --- diag(可临时保留,排错好用) ---
5
- echo "[diag] whoami: $(whoami)"
6
  echo "[diag] id: $(id)"
7
- echo "[diag] PORT=${PORT}"
8
- echo "[diag] DATABASE_DRIVER=${DATABASE_DRIVER}"
9
- echo "[diag] DATABASE_DSN=${DATABASE_DSN}"
10
 
11
- # --- 目录/权限兜底 ---
12
- # 解析 DSN 中的数据库文件路径(仅处理 sqlite 的常见用法)
13
- DB_PATH=""
14
- case "$DATABASE_DSN" in
15
- /*.db*) DB_PATH="$DATABASE_DSN" ;; # 绝对路径,比如 /app/data/gpt-load.db
16
- ./*.db*) DB_PATH="/app/${DATABASE_DSN#./}" ;;# 相对当前工作目录
17
- esac
18
 
19
- if [ -n "$DB_PATH" ]; then
20
- DB_DIR="$(dirname "$DB_PATH")"
21
- mkdir -p "$DB_DIR" || true
22
- # 赋权给当前非 root 用户(Dockerfile 里已 USER app,这里再保险一下)
23
- chown -R "$(id -u)":"$(id -g)" "$DB_DIR" || true
24
- chmod 770 "$DB_DIR" || true
25
- # 预创建空库文件(避免 SQLite 在不可写目录新建失败)
26
- : > "$DB_PATH" || true
27
- fi
28
-
29
- # --- 启动后端(默认监听 :3001) ---
30
  /app/gpt-load &
31
 
32
  APP_PID=$!
33
 
34
- # HF 注入的 $PORT(7860)转发到 3001
35
  if [ "${PORT:-7860}" != "3001" ]; then
36
  echo "Forwarding :$PORT -> :3001 via socat"
37
  socat TCP-LISTEN:${PORT},fork,reuseaddr TCP:127.0.0.1:3001 &
 
1
  #!/usr/bin/env sh
2
  set -e
3
 
 
 
4
  echo "[diag] id: $(id)"
5
+ echo "[diag] PORT=${PORT} DRIVER=${DATABASE_DRIVER} DSN=${DATABASE_DSN}"
 
 
6
 
7
+ # 仅尝试创建目录(若已有会成功返回);权限已在镜像里处理过
8
+ DB_DIR="$(dirname "${DATABASE_DSN:-/app/data/gpt-load.db}")"
9
+ mkdir -p "$DB_DIR" || true
 
 
 
 
10
 
11
+ # 启动后端(默认监听 :3001)
 
 
 
 
 
 
 
 
 
 
12
  /app/gpt-load &
13
 
14
  APP_PID=$!
15
 
16
+ # HF $PORT 转发到 3001(如果程序没适配 $PORT)
17
  if [ "${PORT:-7860}" != "3001" ]; then
18
  echo "Forwarding :$PORT -> :3001 via socat"
19
  socat TCP-LISTEN:${PORT},fork,reuseaddr TCP:127.0.0.1:3001 &