This repository contains the repo2docker config files for the lite Jupyter image — a Python-only stack optimized for fast cold-starts. It is used by the CKEditor-Binder-Plugin to power thebe cells embedded in libretexts.org pages.
For the full multi-language stack (Python, R, Octave, Sage, Julia) used at jupyter.libretexts.org, see LibreTexts/default-env.
Because the config files live at the repo root, this repo can be handed
directly to repo2docker with no --subdir:
jupyter-repo2docker .
The main branch is not used directly to source production images. Build
manually with ./build.sh, push to the docker registry, and then update the
relevant helm values to roll out. CKEditor-Binder-Plugin directly references
git tags in this repo.
environment.yml— conda packages. We only install from theconda-forgechannel.apt.txt— Debian packages viaapt-get. Restricted to Ubuntu 18.04 (bionic) repositories.postBuild— shell script run after everything else is installed; pre-warms import caches.
You can read more about each configuration file's purpose from the repo2docker documentation.
./build.sh
To reuse layers from a previous build (faster rebuilds):
docker pull libretextsbinder/default-env-lite:<prev-hash>
PREV_TAG=<prev-hash> ./build.sh
The scipy-stack pins (numpy, scipy, matplotlib, pandas, sympy,
cython) match the full image so notebooks behave identically across both.
When you bump a pin here, bump it in the full image too — and vice versa.
Note that the lite image tracks a current Python (3.11), while the full
image is held back to 3.8 by sage. The shared scientific-stack pins are
chosen to resolve on both.