test / Dockerfile
mashe's picture
Update Dockerfile
748cd96 verified
# Use an official Python runtime as a parent image
FROM python:3.9
# Set the working directory in the container
WORKDIR /app
# Create a group and user for running the application
RUN groupadd mygroup && useradd -ms /bin/bash -G mygroup appuser
# Copy the current directory contents into the container at /app
# Use --chown to set the ownership and --chmod to set the permissions
COPY --chown=appuser:mygroup . /app
# Install any needed packages specified in requirements.txt
RUN pip install --no-cache-dir -r requirements.txt
# Make port 7860 available to the world outside this container
EXPOSE 7860
# Define environment variable for Gradio server port
ENV GRADIO_SERVER_PORT=7860
# Set the HF_HOME environment variable to a writable directory
ENV HF_HOME=/app/.cache/huggingface
# Create the cache directory if it doesn't exist and set its ownership
RUN mkdir -p $HF_HOME && chown -R appuser:mygroup $HF_HOME
# Switch to the appuser to run the application
USER appuser
# Run app.py when the container launches
CMD ["python", "app.py"]