/
Dockerfile
33 lines (26 loc) · 978 Bytes
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# Dockerfile for binder
# Reference: https://mybinder.readthedocs.io/en/latest/tutorials/dockerfile.html
FROM ghcr.io/sagemath/sage-binder-env:10.2
USER root
# Create user alice with uid 1000
ARG NB_USER=alice
ARG NB_UID=1000
ENV NB_USER alice
ENV NB_UID 1000
ENV HOME /home/${NB_USER}
RUN adduser --disabled-password --gecos "Default user" --uid ${NB_UID} ${NB_USER}
# Make sure the contents of the notebooks directory are in ${HOME}
RUN mkdir -p ${HOME}/9torsion
COPY 9torsion/*.ipynb ${HOME}/9torsion/
RUN mkdir -p ${HOME}/ExistenceOfCurves
COPY 9torsion/*.ipynb ${HOME}/ExistenceOfCurves/
RUN mkdir -p ${HOME}/Triangles
COPY Triangles/*.ipynb ${HOME}/Triangles/
RUN chown -R ${NB_USER}:${NB_USER} ${HOME}
# Switch to the user
USER ${NB_USER}
# Install Sage kernel to Jupyter
RUN mkdir -p $(jupyter --data-dir)/kernels
RUN ln -s /sage/venv/share/jupyter/kernels/sagemath $(jupyter --data-dir)/kernels
# Start in the home directory of the user
WORKDIR /home/${NB_USER}