Update docker-entrypoint.sh
Browse files- docker-entrypoint.sh +15 -30
docker-entrypoint.sh
CHANGED
|
@@ -6,29 +6,18 @@ dir_shell=/ql/shell
|
|
| 6 |
|
| 7 |
|
| 8 |
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
# 从环境变量获取GitHub令牌
|
| 12 |
-
GITHUB_TOKEN=$GITHUB_TOKEN
|
| 13 |
-
|
| 14 |
-
# 定义GitHub仓库地址
|
| 15 |
-
REPO_URL="https://${GITHUB_TOKEN}@github.com/lang03383/hf_ql_his.git"
|
| 16 |
-
|
| 17 |
-
# 检查是否已初始化Git仓库
|
| 18 |
-
if [ ! -d "/ql/data/.git" ]; then
|
| 19 |
-
# 如果没有初始化Git仓库,则克隆仓库
|
| 20 |
-
git clone $REPO_URL /ql/data
|
| 21 |
-
else
|
| 22 |
-
# 如果已经初始化了Git仓库,则拉取最新内容
|
| 23 |
-
cd /ql/data
|
| 24 |
-
git pull origin main
|
| 25 |
-
fi
|
| 26 |
-
|
| 27 |
-
echo -e "GitHub内容同步完成...\n"
|
| 28 |
|
| 29 |
echo -e "======================写入rclone配置========================\n"
|
| 30 |
echo "$RCLONE_CONF" > ~/.config/rclone/rclone.conf
|
| 31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
echo -e "======================1. 检测配置文件========================\n"
|
| 33 |
import_config "$@"
|
| 34 |
make_dir /etc/nginx/conf.d
|
|
@@ -61,19 +50,15 @@ if [[ $EnableExtraShell == true ]]; then
|
|
| 61 |
echo -e "自定义脚本后台执行中...\n"
|
| 62 |
fi
|
| 63 |
|
| 64 |
-
echo -e "
|
|
|
|
|
|
|
|
|
|
| 65 |
|
| 66 |
-
#
|
| 67 |
-
|
| 68 |
|
| 69 |
-
|
| 70 |
-
inotifywait -m -r -e modify,attrib,close_write,move,create,delete /ql/data |
|
| 71 |
-
while read -r directory events filename; do
|
| 72 |
-
cd /ql/data
|
| 73 |
-
git add .
|
| 74 |
-
git commit -m "Automated commit for $filename on $(date)"
|
| 75 |
-
git push origin main
|
| 76 |
-
done &
|
| 77 |
|
| 78 |
echo -e "##########写入登陆信息############"
|
| 79 |
echo "{ \"username\": \"$ADMIN_USERNAME\", \"password\": \"$ADMIN_PASSWORD\" }" > /ql/data/config/auth.json
|
|
|
|
| 6 |
|
| 7 |
|
| 8 |
|
| 9 |
+
python3 -c "from datasets import load_dataset"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
|
| 11 |
echo -e "======================写入rclone配置========================\n"
|
| 12 |
echo "$RCLONE_CONF" > ~/.config/rclone/rclone.conf
|
| 13 |
|
| 14 |
+
echo -e "======================从 Datasets 下载数据========================\n"
|
| 15 |
+
|
| 16 |
+
# 使用 Space Secrets 中的环境变量
|
| 17 |
+
python3 -c "from datasets import load_dataset; load_dataset('$DATASET_NAME', use_auth_token='$ACCESS_TOKEN').save_to_disk('/ql/data')"
|
| 18 |
+
|
| 19 |
+
echo -e "数据下载完成...\n"
|
| 20 |
+
|
| 21 |
echo -e "======================1. 检测配置文件========================\n"
|
| 22 |
import_config "$@"
|
| 23 |
make_dir /etc/nginx/conf.d
|
|
|
|
| 50 |
echo -e "自定义脚本后台执行中...\n"
|
| 51 |
fi
|
| 52 |
|
| 53 |
+
echo -e "======================定期备份数据到 Datasets========================\n"
|
| 54 |
+
|
| 55 |
+
# 设置备份频率 (每分钟备份一次)
|
| 56 |
+
BACKUP_FREQUENCY="* * * * *"
|
| 57 |
|
| 58 |
+
# 创建 cron 任务,使用 Space Secrets 中的环境变量
|
| 59 |
+
(crontab -l 2>/dev/null; echo "$BACKUP_FREQUENCY python3 -c \"from datasets import load_dataset, DatasetDict; DatasetDict.from_disk('/ql/data').push_to_hub('$DATASET_NAME', use_auth_token='$ACCESS_TOKEN', private=True)\"") | crontab -
|
| 60 |
|
| 61 |
+
echo -e "数据备份任务已设置...\n"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 62 |
|
| 63 |
echo -e "##########写入登陆信息############"
|
| 64 |
echo "{ \"username\": \"$ADMIN_USERNAME\", \"password\": \"$ADMIN_PASSWORD\" }" > /ql/data/config/auth.json
|