File size: 865 Bytes
17c9b97
2e8cb50
ce8b128
7a796bc
 
ac071f7
ce8b128
 
 
 
2567d5f
ce8b128
 
1103391
 
 
6772db4
ce8b128
 
7a796bc
2e8cb50
7a796bc
 
ce8b128
 
7a796bc
 
 
 
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
FROM python:3.10-slim

# Dépendances système
RUN apt-get update && apt-get install -y --no-install-recommends git ca-certificates && \
    rm -rf /var/lib/apt/lists/*

# Créer l'utilisateur 'user' (uid=1000), comme sur HF, et son home
RUN useradd -m -u 1000 user || true

# Espace de travail persistant et **inscriptible** par l'utilisateur
ENV WORKSPACE=/home/user/workspace
RUN mkdir -p ${WORKSPACE} && chown -R user:user /home/user

# Si tu n'as pas de requirements.txt :
RUN pip install --no-cache-dir fastapi "uvicorn[standard]"


# Contexte d'exécution en tant que 'user' (non-root)
USER user
WORKDIR ${WORKSPACE}

ENV PIP_NO_CACHE_DIR=1 PYTHONDONTWRITEBYTECODE=1 PYTHONUNBUFFERED=1

# Entrypoint
COPY --chown=user:user entrypoint.sh /usr/local/bin/entrypoint.sh
RUN chmod +x /usr/local/bin/entrypoint.sh

EXPOSE 7860
CMD ["/usr/local/bin/entrypoint.sh"]