| |
|
|
| |
| FROM node:20-alpine AS frontend |
| WORKDIR /app |
| COPY src/frontend/package*.json ./ |
| RUN npm ci |
| COPY src/frontend ./ |
| RUN npm run build |
|
|
| |
| FROM mambaorg/micromamba:1.5.10 |
|
|
| USER root |
| RUN apt-get update && apt-get install -y --no-install-recommends \ |
| build-essential libgl1 libglib2.0-0 git curl ca-certificates \ |
| && rm -rf /var/lib/apt/lists/* |
| USER $MAMBA_USER |
|
|
| |
| COPY --chown=$MAMBA_USER:$MAMBA_USER environment.yml /tmp/environment.yml |
| RUN micromamba install -y -n base -f /tmp/environment.yml \ |
| && micromamba clean --all --yes |
| ARG MAMBA_DOCKERFILE_ACTIVATE=1 |
|
|
| |
| COPY --chown=$MAMBA_USER:$MAMBA_USER src/backend/requirements.txt /tmp/requirements.txt |
| RUN pip install --no-cache-dir \ |
| --extra-index-url https://download.pytorch.org/whl/cu118 \ |
| -r /tmp/requirements.txt |
|
|
| |
| |
| RUN pip install --no-cache-dir --no-deps karateclub==1.3.3 |
|
|
| |
| WORKDIR /app |
| COPY --chown=$MAMBA_USER:$MAMBA_USER src/backend /app/backend |
| COPY --chown=$MAMBA_USER:$MAMBA_USER src/research /app/research |
| COPY --chown=$MAMBA_USER:$MAMBA_USER --from=frontend /app/dist /app/backend/dist |
| COPY --chown=$MAMBA_USER:$MAMBA_USER --chmod=0755 entrypoint.sh /entrypoint.sh |
|
|
| |
| |
| |
|
|
| |
| |
| |
| |
| |
| |
| |
| ENV RESEARCH_ROOT=/app/research \ |
| CHECKPOINTS_ROOT=/app/research \ |
| SPA_DIST_DIR=/app/backend/dist \ |
| DJANGO_SETTINGS_MODULE=research_api.settings \ |
| PYTHONUNBUFFERED=1 \ |
| PORT=7860 \ |
| HF_HUB_ENABLE_HF_TRANSFER=1 |
|
|
| WORKDIR /app/backend |
| RUN python manage.py collectstatic --noinput |
|
|
| EXPOSE 7860 |
| ENTRYPOINT ["/usr/local/bin/_entrypoint.sh", "/entrypoint.sh"] |
|
|