Spaces:
Sleeping
Sleeping
File size: 1,488 Bytes
107d90e c024705 63a1cdc 107d90e c024705 63a1cdc c024705 c751045 c024705 e3d301c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
FROM python:3.11-slim
WORKDIR /app
# Install system build dependencies required to build some wheels (pycld3, llama-cpp-python, etc.)
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
build-essential \
cmake \
protobuf-compiler \
libprotobuf-dev \
gcc \
g++ \
python3-dev \
libffi-dev \
libssl-dev \
pkg-config \
libgomp1 \
git \
&& rm -rf /var/lib/apt/lists/*
# Ensure modern pip/setuptools/wheel before installing heavy requirements
RUN python -m pip install --upgrade pip setuptools wheel
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
# Create writable directories
RUN mkdir -p /app/instance && chmod -R 777 /app/instance
ENV HF_HOME=/app/transformers_cache
RUN mkdir -p /app/transformers_cache && chmod -R 777 /app/transformers_cache
# Create ../data directory for vector store
RUN mkdir -p /app/data && chmod -R 777 /app/data
RUN mkdir -p /data && chmod -R 777 /data
# Create uploads directory
RUN mkdir -p /app/uploads && chmod -R 777 /app/uploads
# Create logs directory
RUN mkdir -p /app/logs && chmod -R 777 /app/logs
RUN mkdir -p /storage && chmod -R 777 /storage # Ensure /storage exists before changing permissions
# Pre-download sentence-transformers model
RUN python -c "from sentence_transformers import SentenceTransformer; SentenceTransformer('sentence-transformers/all-MiniLM-L6-v2')"
EXPOSE 7860
CMD ["python", "app.py"]
|