Calorie_Estimator / Dockerfile
shingguy1's picture
Update Dockerfile
bc463fc verified
# Use a Python slim base image with necessary system dependencies
FROM python:3.10-slim
# Install system dependencies for pillow and general compatibility
RUN apt-get update && apt-get install -y \
libpng-dev \
libjpeg-dev \
gcc \
&& rm -rf /var/lib/apt/lists/*
# Set working directory
WORKDIR /app
# Copy requirements and install dependencies
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Copy the Streamlit app file (in src directory)
COPY src/streamlit_app.py ./src/streamlit_app.py
# Create cache directory with write permissions
RUN mkdir -p /tmp/cache && chmod -R 777 /tmp/cache
# Expose Streamlit's default port
EXPOSE 8501
# Set environment variable for Hugging Face cache
ENV HUGGINGFACE_HUB_CACHE=/tmp/cache
# Run Streamlit with the correct file path, increased upload size, and disabled XSRF protection
CMD ["streamlit", "run", "src/streamlit_app.py", "--server.maxUploadSize=1000", "--server.port=8501", "--server.enableXsrfProtection=false"]