Spaces:
Sleeping
Sleeping
| # python version used when developing | |
| FROM python:3.11.11-slim-bookworm | |
| # set working directoy | |
| WORKDIR /app | |
| # Expose the secrets during build time and use them as environment variables | |
| RUN --mount=type=secret,id=GROQ_API_KEY,mode=0444,required=true | |
| RUN --mount=type=secret,id=GOOGLE_API_KEY,mode=0444,required=true | |
| # copy requirements file and install libraries and dependencies | |
| COPY requirements.txt . | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # copy the rest of the files | |
| COPY ./rag_app.py /app/rag_app.py | |
| COPY ./vector_db_alta_v2 /app/vector_db_alta_v2 | |
| COPY ./images /app/images | |
| # Set permissions for vector_db_alta_v2 directory (all files inside it) | |
| RUN chmod -R 777 /app/vector_db_alta_v2 | |
| EXPOSE 8501 | |
| # from streamlit's documentation: | |
| # "The HEALTHCHECK instruction tells Docker how to test a container to check that it is still working." | |
| HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health | |
| ENTRYPOINT ["streamlit", "run", "rag_app.py", "--server.port=8501", "--server.address=0.0.0.0"] | |