FROM python:3.13-slim ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ PIP_NO_CACHE_DIR=1 \ UV_LINK_MODE=copy \ STREAMLIT_SERVER_HEADLESS=true \ STREAMLIT_SERVER_PORT=7860 \ STREAMLIT_SERVER_ADDRESS=0.0.0.0 ARG APP_REPO=https://github.com/giorginolab/pkaScope.git ARG APP_COMMIT=a01123d95d79122e8bf9ec0b45bd4dd4c7698cdf RUN apt-get update \ && apt-get install --yes --no-install-recommends git \ && rm -rf /var/lib/apt/lists/* RUN python -m pip install --no-cache-dir uv WORKDIR /opt RUN git clone "${APP_REPO}" app \ && cd app \ && git checkout "${APP_COMMIT}" \ && git submodule update --init --recursive WORKDIR /opt/app RUN uv sync --frozen --no-dev ENV PATH="/opt/app/.venv/bin:${PATH}" EXPOSE 7860 HEALTHCHECK CMD python -c "import urllib.request; urllib.request.urlopen('http://127.0.0.1:7860/_stcore/health').read()" CMD ["streamlit", "run", "main.py", "--server.port=7860", "--server.address=0.0.0.0"]