Spaces:
Runtime error
Runtime error
| # Utiliser Python 3.10 comme base | |
| FROM python:3.10-slim | |
| # Installer poetry | |
| RUN pip install poetry | |
| # Create a non-root user | |
| RUN useradd -m -u 1000 appuser | |
| # Définir le répertoire de travail | |
| WORKDIR /app | |
| # Install system dependencies for PyAudio and basic tools | |
| RUN apt-get update && apt-get install -y \ | |
| gcc \ | |
| portaudio19-dev \ | |
| python3-dev \ | |
| libasound2-dev \ | |
| libpulse-dev \ | |
| libportaudio2 \ | |
| libportaudiocpp0 \ | |
| libasound2 \ | |
| libasound2-data \ | |
| wget \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # Add NVIDIA repository and install CUDA | |
| RUN wget https://developer.download.nvidia.com/compute/cuda/repos/debian11/x86_64/cuda-keyring_1.0-1_all.deb && \ | |
| dpkg -i cuda-keyring_1.0-1_all.deb && \ | |
| apt-get update && \ | |
| apt-get install -y cuda-toolkit-11-8 cuda-cudart-11-8 libcudnn8 && \ | |
| rm -rf /var/lib/apt/lists/* && \ | |
| rm cuda-keyring_1.0-1_all.deb | |
| # Copier les fichiers de dépendances | |
| COPY poetry.lock pyproject.toml ./ | |
| COPY . . | |
| # Configurer poetry pour ne pas créer un environnement virtuel | |
| RUN poetry config virtualenvs.create false | |
| # Installer les dépendances sans installer le projet lui-même | |
| RUN poetry install --only main --no-interaction --no-ansi --no-root | |
| # Create static directory and set permissions | |
| RUN mkdir -p /app/server/static && \ | |
| chown -R appuser:appuser /app | |
| # Switch to non-root user | |
| USER appuser | |
| # Verify permissions after user switch | |
| RUN mkdir -p ~/static | |
| # Exposer le port utilisé par Flask | |
| EXPOSE 7860 | |
| # Commande pour démarrer l'application | |
| CMD ["python", "-m", "server"] | |