geekyrakshit's picture
update: dockerfile
29642ba
raw
history blame
771 Bytes
FROM python:3.12-slim
WORKDIR /app
# Ensure uv (and other tools following XDG) can write caches even when the container
# runs as a non-root/random UID (e.g., in Kubernetes/OpenShift).
ENV HOME=/app
ENV XDG_CACHE_HOME=/app/.cache
ENV UV_CACHE_DIR=/app/.cache/uv
RUN mkdir -p /app/.cache/uv
RUN apt-get update && apt-get install -y \
build-essential \
curl \
software-properties-common \
git \
wget \
&& rm -rf /var/lib/apt/lists/*
COPY requirements.txt ./
COPY src/ ./src/
RUN pip3 install uv
RUN uv venv
RUN uv pip install -r requirements.txt
EXPOSE 8501
HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
ENTRYPOINT ["uv", "run", "streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]