Solvaxis
commited on
Commit
·
b342108
1
Parent(s):
6fd8de9
Add application file
Browse files- Dockerfile +27 -0
- README.md +2 -2
- 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 "$@"
|