nomid2 commited on
Commit
430f660
·
verified ·
1 Parent(s): 8843925

Create entrypoint-wrapper.sh

Browse files
Files changed (1) hide show
  1. entrypoint-wrapper.sh +50 -0
entrypoint-wrapper.sh ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/sh
2
+
3
+ # --------------------------------------------------------------------------
4
+ # 脚本目标:
5
+ # 1. 确保应用指定的日志目录 (/app/logs) 存在且可写。
6
+ # 2. 如果应用仍然尝试创建 /data/logs (之前的错误),也确保它存在。
7
+ # --------------------------------------------------------------------------
8
+
9
+ TARGET_LOG_DIR="/app/logs" # 这是我们通过 CMD 指定的日志目录
10
+ FALLBACK_DATA_LOGS_DIR="/data/logs" # 这是应用之前尝试创建的目录
11
+
12
+ echo "Entrypoint wrapper: Ensuring log directories exist..."
13
+
14
+ # 确保 /app/logs 存在
15
+ # /app/logs 是由 Hugging Face 通过 persistent_storage 挂载的
16
+ # 通常挂载点本身由 HF 创建,我们在此确保它作为目录存在
17
+ # 并且如果需要,可以调整其内部权限(尽管通常 HF 挂载的卷对容器用户可写)
18
+ if [ ! -d "$TARGET_LOG_DIR" ]; then
19
+ echo "Creating directory: $TARGET_LOG_DIR"
20
+ mkdir -p "$TARGET_LOG_DIR"
21
+ if [ $? -ne 0 ]; then
22
+ echo "ERROR: Failed to create $TARGET_LOG_DIR"
23
+ # 可以选择在这里退出,或者继续尝试
24
+ fi
25
+ else
26
+ echo "Directory $TARGET_LOG_DIR already exists."
27
+ fi
28
+ # (可选)显式设置权限,尽管通常 HF 挂载的卷对容器用户可写
29
+ # chown -R 1000:1000 "$TARGET_LOG_DIR" # 假设用户ID/组ID是1000
30
+ # chmod -R 755 "$TARGET_LOG_DIR"
31
+
32
+ # (可选)如果应用仍然可能尝试 /data/logs,也处理一下
33
+ # /data 也是一个持久化存储挂载点
34
+ if [ ! -d "$FALLBACK_DATA_LOGS_DIR" ]; then
35
+ echo "Creating directory: $FALLBACK_DATA_LOGS_DIR (as a fallback precaution)"
36
+ mkdir -p "$FALLBACK_DATA_LOGS_DIR"
37
+ if [ $? -ne 0 ]; then
38
+ echo "ERROR: Failed to create $FALLBACK_DATA_LOGS_DIR"
39
+ fi
40
+ else
41
+ echo "Directory $FALLBACK_DATA_LOGS_DIR already exists."
42
+ fi
43
+ # (可选)权限设置
44
+ # chown -R 1000:1000 "$FALLBACK_DATA_LOGS_DIR"
45
+ # chmod -R 755 "$FALLBACK_DATA_LOGS_DIR"
46
+
47
+
48
+ echo "Entrypoint wrapper: Starting application with arguments: $@"
49
+ # 执行原始的 ENTRYPOINT (/one-api) 并传递 CMD 参数
50
+ exec /one-api "$@"