Spaces:
Running
Running
| # ============================================================ | |
| # Dockerfile: Open WebUI + Ollama — HuggingFace Space ready | |
| # ============================================================ | |
| FROM ghcr.io/open-webui/open-webui:main | |
| USER root | |
| # ------------------------------------------------------------ | |
| # 1. Utilidades del sistema | |
| # ------------------------------------------------------------ | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| curl ca-certificates bash jq procps netcat-openbsd && \ | |
| rm -rf /var/lib/apt/lists/* | |
| # ------------------------------------------------------------ | |
| # 2. Instala Ollama | |
| # ------------------------------------------------------------ | |
| RUN curl -fsSL https://ollama.com/install.sh | sh | |
| # ------------------------------------------------------------ | |
| # 3. Script de arranque | |
| # ------------------------------------------------------------ | |
| COPY start-container.sh /start-container.sh | |
| RUN chmod +x /start-container.sh | |
| # ------------------------------------------------------------ | |
| # 4. Puerto — CRÍTICO: HF Spaces requiere el 7860 | |
| # ------------------------------------------------------------ | |
| ENV PORT="7860" | |
| # ------------------------------------------------------------ | |
| # 5. Ollama | |
| # ------------------------------------------------------------ | |
| ENV OLLAMA_BASE_URL="http://127.0.0.1:11434" | |
| # API Key de ollama.com para modelos cloud — ponla como Secret en HF, nunca hardcodeada | |
| ENV OLLAMA_API_KEY="" | |
| # ------------------------------------------------------------ | |
| # 6. Modelos | |
| # ------------------------------------------------------------ | |
| ENV OPENWEBUI_DEFAULT_MODEL="aguitachan3/yuuki-best:f32" | |
| ENV OPENWEBUI_MODELS="aguitachan3/yuuki-best:f32,qwen3.5:397b-cloud,gpt-oss:120b-cloud,gemma3:27b-cloud,mistral-large-3:675b-cloud" | |
| # ------------------------------------------------------------ | |
| # 7. Open WebUI — General | |
| # ------------------------------------------------------------ | |
| ENV OPENWEBUI_BASE_URL="/" | |
| ENV OPENWEBUI_LOCALE="en" | |
| ENV OFFLINE_MODE="false" | |
| ENV ENABLE_VERSION_UPDATE_CHECK="false" | |
| # ------------------------------------------------------------ | |
| # 8. Auth — DEBE estar en true para que las imágenes funcionen | |
| # Con false, los endpoints /profile/image devuelven 401 siempre | |
| # ------------------------------------------------------------ | |
| ENV WEBUI_AUTH="true" | |
| ENV WEBUI_SECRET_KEY="openwebui-default-secret-for-space" | |
| # ------------------------------------------------------------ | |
| # 9. URL pública del Space — necesaria para cookies y CORS | |
| # detrás del proxy de HF. Cámbiala si renombras el Space. | |
| # Patrón: https://[owner]-[space-name].hf.space | |
| # ------------------------------------------------------------ | |
| ENV WEBUI_URL="https://opceanai-Open-webui.hf.space" | |
| # ------------------------------------------------------------ | |
| # 10. Cookies — CRÍTICO detrás del proxy HTTPS de HF | |
| # HF recibe HTTPS pero pasa HTTP al contenedor. | |
| # samesite=none + secure=true es la única combo que hace | |
| # que las cookies se envíen correctamente en ese contexto, | |
| # resolviendo los 401 en /profile/image | |
| # ------------------------------------------------------------ | |
| ENV WEBUI_SESSION_COOKIE_SECURE="true" | |
| ENV WEBUI_SESSION_COOKIE_SAME_SITE="none" | |
| # ------------------------------------------------------------ | |
| # 11. Uvicorn | |
| # ------------------------------------------------------------ | |
| ENV UVICORN_WORKERS="1" | |
| # ------------------------------------------------------------ | |
| # 12. Directorios de datos + permisos | |
| # ------------------------------------------------------------ | |
| ENV DATA_DIR="/app/backend/open_webui/data" | |
| ENV STATIC_DIR="/app/backend/open_webui/static" | |
| RUN mkdir -p /app/backend/open_webui/data && \ | |
| chmod -R 777 /app/backend/open_webui/data | |
| # ------------------------------------------------------------ | |
| # 13. Exponer puerto | |
| # ------------------------------------------------------------ | |
| EXPOSE 7860 | |
| ENTRYPOINT ["/start-container.sh"] |