Solvaxis commited on
Commit
b342108
·
1 Parent(s): 6fd8de9

Add application file

Browse files
Files changed (3) hide show
  1. Dockerfile +27 -0
  2. README.md +2 -2
  3. entrypoint.sh +30 -0
Dockerfile ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # 使用uni-api官方镜像
2
+ FROM yym68686/uni-api:latest
3
+
4
+ # 创建数据目录并设置权限
5
+ RUN mkdir -p /data && chown -R 1000:1000 /data
6
+
7
+ # 设置用户和工作目录
8
+ RUN useradd -m -u 1000 user
9
+ USER user
10
+ ENV HOME=/home/user \
11
+ PATH=/home/user/.local/bin:$PATH \
12
+ DISABLE_DATABASE=true
13
+
14
+ # 复制入口点脚本
15
+ COPY --chown=user entrypoint.sh /home/user/entrypoint.sh
16
+ RUN chmod +x /home/user/entrypoint.sh
17
+
18
+ # 确保/home目录可写(这很重要!)
19
+ USER root
20
+ RUN chmod 777 /home
21
+ USER user
22
+
23
+ # 设置工作目录
24
+ WORKDIR /home/user
25
+
26
+ # 入口点
27
+ ENTRYPOINT ["/home/user/entrypoint.sh"]
README.md CHANGED
@@ -4,7 +4,7 @@ emoji: 📊
4
  colorFrom: gray
5
  colorTo: red
6
  sdk: docker
 
7
  pinned: false
 
8
  ---
9
-
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
4
  colorFrom: gray
5
  colorTo: red
6
  sdk: docker
7
+ license: gpl-3.0
8
  pinned: false
9
+ app_port: 8000
10
  ---
 
 
entrypoint.sh ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/sh
2
+ set -e
3
+ CONFIG_FILE_PATH="/home/api.yaml" # 注意这里改成/home/api.yaml
4
+
5
+ echo "DEBUG: Entrypoint script started."
6
+
7
+ # 检查Secret是否存在
8
+ if [ -z "$API_YAML_CONTENT" ]; then
9
+ echo "ERROR: Secret 'API_YAML_CONTENT' is不存在或为空。退出。"
10
+ exit 1
11
+ else
12
+ echo "DEBUG: API_YAML_CONTENT secret found. Preparing to write..."
13
+ printf '%s\n' "$API_YAML_CONTENT" > "$CONFIG_FILE_PATH"
14
+ echo "DEBUG: Attempted to write to $CONFIG_FILE_PATH."
15
+
16
+ if [ -f "$CONFIG_FILE_PATH" ]; then
17
+ echo "DEBUG: File $CONFIG_FILE_PATH created successfully. Size: $(wc -c < "$CONFIG_FILE_PATH") bytes."
18
+ # 显示文件的前几行进行调试(注意不要显示敏感信息)
19
+ echo "DEBUG: First few lines (without sensitive info):"
20
+ head -n 3 "$CONFIG_FILE_PATH" | grep -v "api:" | grep -v "password"
21
+ else
22
+ echo "ERROR: File $CONFIG_FILE_PATH was NOT created."
23
+ exit 1
24
+ fi
25
+ fi
26
+
27
+ echo "DEBUG: About to execute python main.py..."
28
+ # 不需要使用--config参数,因为程序有默认路径
29
+ cd /home
30
+ exec python main.py "$@"