Spaces:
Sleeping
Sleeping
| # 使用官方 OpenList 作为基础镜像 | |
| FROM openlistteam/openlist:latest | |
| USER root | |
| # 安装基础依赖包 (Alpine 环境) | |
| RUN apk add --no-cache python3 py3-pip tar bash curl && \ | |
| pip3 install --no-cache-dir "huggingface_hub[cli]" --break-system-packages | |
| # 创建数据目录,并将所有权赋予用户 (UID 1000) | |
| RUN mkdir -p /opt/openlist/data && \ | |
| chown -R 1000:1000 /opt/openlist && \ | |
| chmod -R 777 /opt/openlist | |
| # 拷贝并配置备份恢复脚本 | |
| COPY ./restore.sh /restore.sh | |
| RUN chmod +x /restore.sh && chown 1000:1000 /restore.sh | |
| # 暴露 OpenList 默认端口 5244 | |
| EXPOSE 5244 | |
| ENV PORT=5244 | |
| ENV TZ=Asia/Shanghai | |
| # 【核心修改】:显式声明用户的 HOME 目录与 Huggingface 的缓存目录 | |
| # 让 hf 命令行工具把所有的临时日志、缓存、块数据全部写入我们有权限的目录中 | |
| ENV HOME=/opt/openlist | |
| ENV HF_HOME=/opt/openlist/.cache | |
| # 切换回低权限用户 1000 运行 | |
| USER 1000 | |
| # 将脚本作为容器的主入口 | |
| ENTRYPOINT ["/bin/bash", "/restore.sh"] |