FROM python:3.12-slim WORKDIR /app # Hugging Face Spaces listens on 7860. ENV PORT=7860 \ PYTHONUNBUFFERED=1 \ APP_ENV=production \ DATABASE_URL=sqlite+aiosqlite:///./data/db/sheetly.db \ UPLOAD_PATH=./data/uploads \ EXPORT_PATH=./exports RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential \ && rm -rf /var/lib/apt/lists/* COPY requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt COPY . . RUN mkdir -p /app/data/db /app/data/uploads /app/exports \ && chmod -R 777 /app/data /app/exports EXPOSE 7860 CMD ["sh", "-c", \ "uvicorn app.main:app --host 0.0.0.0 --port ${PORT:-7860}"]