FROM python:3.11 RUN useradd -m -u 1000 user USER user # 环境变量设置 ENV RAG_EMBEDDING_MODEL="sentence-transformers/all-MiniLM-L6-v2" \ SENTENCE_TRANSFORMERS_HOME="/app/models" \ RAG_EMBEDDING_MODEL_AUTO_UPDATE="true" \ PATH="/home/user/.local/bin:$PATH" \ DATA_DIR="/app/data" \ WEBUI_SECRET_KEY="1234567890abcdef" WORKDIR /app # 确保指定的路径存在 RUN mkdir -p $SENTENCE_TRANSFORMERS_HOME # 安装应用和依赖 RUN pip install --no-cache-dir open-webui watchdog RUN pip install "huggingface_hub[hf_xet]" RUN python -c "from sentence_transformers import SentenceTransformer; SentenceTransformer('$RAG_EMBEDDING_MODEL')" # 添加数据同步脚本 COPY --chown=user . /app # 启动顺序:1.初始化下载数据 2.启动应用和数据同步(60秒后开始同步) # CMD ["sh", "-c", "python r2_sync.py init && sleep 30 && python r2_sync.py sync & open-webui serve --port 7860"] CMD ["python", "start.py"]