File size: 1,062 Bytes
ed1a913
 
b1136b2
345f928
ed1a913
b1136b2
 
 
 
 
 
 
 
47a34a1
345f928
 
 
 
795d237
345f928
 
ed1a913
b1136b2
345f928
 
ed1a913
b1136b2
345f928
ed1a913
b1136b2
 
ed1a913
b1136b2
ed1a913
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
FROM python:3.11-slim

# Создаём пользователя с ID 1000 (стандартный для HF Spaces)
RUN useradd -m -u 1000 user

# Устанавливаем системные зависимости (если нужны)
RUN apt-get update && apt-get install -y \
    git \
    curl \
    && rm -rf /var/lib/apt/lists/*

# 🔥 Создаём директорию для данных с полными правами (до переключения пользователя)
RUN mkdir -p /data && chmod 777 /data

# Переключаемся на пользователя
USER user
ENV HOME=/home/user \
    PATH=/home/user/.local/bin:$PATH

# Устанавливаем рабочую директорию
WORKDIR $HOME/app

# Копируем зависимости
COPY --chown=user requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# Копируем код
COPY --chown=user . .

# Открываем порт
EXPOSE 7860

# Запускаем FastAPI
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]