James McCool
Enhance Dockerfile and Streamlit app for secret management and environment variable usage
51c1a0b
FROM python:3.9-slim | |
WORKDIR /app | |
RUN apt-get update && apt-get install -y \ | |
build-essential \ | |
curl \ | |
software-properties-common \ | |
git \ | |
&& rm -rf /var/lib/apt/lists/* | |
COPY requirements.txt ./ | |
COPY src/ ./src/ | |
RUN pip3 install -r requirements.txt | |
# Expose the secret SECRET_EXAMPLE at buildtime and use its value as git remote URL | |
RUN --mount=type=secret,id=mongo_uri,mode=0444,required=true \ | |
git init && \ | |
git remote add origin $(cat /run/secrets/mongo_uri) | |
EXPOSE 8501 | |
HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health | |
ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"] |