FROM python:3.9-slim # Create a non-root user and switch to it RUN useradd -m appuser WORKDIR /app RUN chown appuser:appuser /app USER appuser # Copy the requirements file into the container COPY --chown=appuser:appuser requirements.txt . # Install any needed packages specified in requirements.txt RUN pip install --no-cache-dir -r requirements.txt # Copy the current directory contents into the container COPY --chown=appuser:appuser . . # Expose port 7860 (default port for Gradio) EXPOSE 7860 # Run the app when the container launches CMD ["python", "app.py"]