lang03383 commited on
Commit
2fa14f0
·
verified ·
1 Parent(s): 2f07449

Update docker-entrypoint.sh

Browse files
Files changed (1) hide show
  1. docker-entrypoint.sh +15 -30
docker-entrypoint.sh CHANGED
@@ -6,29 +6,18 @@ dir_shell=/ql/shell
6
 
7
 
8
 
9
- echo -e "======================初始化并更新GitHub储存库内容========================\n"
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 "====================7. 启动实时同步到GitHub========================\n"
 
 
 
65
 
66
- # 设置远程仓库地址
67
- git remote set-url origin $REPO_URL
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