Update entrypoint-wrapper.sh
Browse files- entrypoint-wrapper.sh +0 -34
entrypoint-wrapper.sh
CHANGED
|
@@ -1,50 +1,16 @@
|
|
| 1 |
#!/bin/sh
|
| 2 |
|
| 3 |
-
# 目标:在容器的临时文件系统中创建应用程序可能需要的目录
|
| 4 |
-
|
| 5 |
-
# 从 Dockerfile CMD 获取的日志目录路径
|
| 6 |
-
APP_LOG_DIR_CMD="/app/logs"
|
| 7 |
-
# 应用程序之前尝试创建的 /data/logs (作为备用)
|
| 8 |
-
# APP_DATA_LOGS_FALLBACK="/data/logs" # 如果您还想处理这个,可以取消注释
|
| 9 |
-
# SQLite 数据可能存放的 /data 目录
|
| 10 |
SQLITE_DATA_DIR="/data"
|
| 11 |
|
| 12 |
echo "Entrypoint wrapper: Attempting to create necessary directories in ephemeral FS..."
|
| 13 |
|
| 14 |
-
# 1. 为 CMD 中指定的 --log-dir /app/logs 创建目录
|
| 15 |
-
echo "Ensuring directory $APP_LOG_DIR_CMD exists..."
|
| 16 |
-
mkdir -p "$APP_LOG_DIR_CMD"
|
| 17 |
-
if [ $? -ne 0 ]; then
|
| 18 |
-
# 如果创建失败,记录错误,但让应用继续尝试(应用自己也会报错)
|
| 19 |
-
echo "ERROR: Failed to create $APP_LOG_DIR_CMD in ephemeral FS. App logging to this path might fail."
|
| 20 |
-
else
|
| 21 |
-
echo "$APP_LOG_DIR_CMD is ready or was created in ephemeral FS."
|
| 22 |
-
# 可选:如果怀疑权限问题,可以尝试更改所有权/权限
|
| 23 |
-
# 这假设 Hugging Face 以 uid 1000 运行容器
|
| 24 |
-
# chown -R 1000:1000 "$APP_LOG_DIR_CMD"
|
| 25 |
-
# chmod -R 755 "$APP_LOG_DIR_CMD"
|
| 26 |
-
fi
|
| 27 |
-
|
| 28 |
-
# 2. 为 SQLite 数据创建 /data 目录 (如果应用使用它)
|
| 29 |
echo "Ensuring directory $SQLITE_DATA_DIR exists (for SQLite)..."
|
| 30 |
mkdir -p "$SQLITE_DATA_DIR"
|
| 31 |
if [ $? -ne 0 ]; then
|
| 32 |
echo "ERROR: Failed to create $SQLITE_DATA_DIR in ephemeral FS. App data storage might fail."
|
| 33 |
else
|
| 34 |
echo "$SQLITE_DATA_DIR is ready or was created in ephemeral FS."
|
| 35 |
-
# chown -R 1000:1000 "$SQLITE_DATA_DIR"
|
| 36 |
-
# chmod -R 755 "$SQLITE_DATA_DIR"
|
| 37 |
-
|
| 38 |
-
# (可选)如果应用可能仍然尝试创建 /data/logs
|
| 39 |
-
# echo "Ensuring directory $APP_DATA_LOGS_FALLBACK exists (if app falls back to it)..."
|
| 40 |
-
# mkdir -p "$APP_DATA_LOGS_FALLBACK"
|
| 41 |
-
# if [ $? -ne 0 ]; then
|
| 42 |
-
# echo "Warning: Failed to create $APP_DATA_LOGS_FALLBACK."
|
| 43 |
-
# else
|
| 44 |
-
# echo "$APP_DATA_LOGS_FALLBACK is ready or was created."
|
| 45 |
-
# fi
|
| 46 |
fi
|
| 47 |
|
| 48 |
echo "Entrypoint wrapper: Starting application with arguments: $@"
|
| 49 |
-
# 执行原始的 ENTRYPOINT (/one-api) 并传递 CMD 参数
|
| 50 |
exec /one-api "$@"
|
|
|
|
| 1 |
#!/bin/sh
|
| 2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
SQLITE_DATA_DIR="/data"
|
| 4 |
|
| 5 |
echo "Entrypoint wrapper: Attempting to create necessary directories in ephemeral FS..."
|
| 6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7 |
echo "Ensuring directory $SQLITE_DATA_DIR exists (for SQLite)..."
|
| 8 |
mkdir -p "$SQLITE_DATA_DIR"
|
| 9 |
if [ $? -ne 0 ]; then
|
| 10 |
echo "ERROR: Failed to create $SQLITE_DATA_DIR in ephemeral FS. App data storage might fail."
|
| 11 |
else
|
| 12 |
echo "$SQLITE_DATA_DIR is ready or was created in ephemeral FS."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 13 |
fi
|
| 14 |
|
| 15 |
echo "Entrypoint wrapper: Starting application with arguments: $@"
|
|
|
|
| 16 |
exec /one-api "$@"
|