unsloth/docker
Daniel Han c9ff52ba04 docker: Colab-grade JupyterLab and Studio UX for the Blackwell image
Stacks a Colab-like JupyterLab and Studio experience on top of the
existing Blackwell image. Additive only: the training stack, CUDA/torch
pinning, and the Studio/JupyterLab/sshd service trio are unchanged.

JupyterLab labextension (prebuilt in a throwaway builder stage, so the
runtime image stays Node-free):
  - Unsloth Dark (Monokai) theme, adaptive light/dark by system preference
  - Colab-style ArrowDown/Up cell navigation
  - top-bar Unsloth logo (stock Jupyter logo disabled and locked)
  - #@title lines render as collapsible Heading-2 form bars
  - Ctrl+A in a cell output selects only that output, not the whole
    notebook (the old behaviour ran notebook:select-all and was laggy)
  - right activity bar hidden by default
  - overrides.json: per-cell run button without auto-advance, labeled
    Restart and Run All, windowing off so collapsing an output does not
    snap to the cell top, news/update prompts suppressed

Studio and login branding: Unsloth favicon, page logo, and a dark
Unsloth login page that rotates through the curated Studio sloth
stickers (fail-soft to the logo).

Notebook organization and Colab compatibility (base image):
  - categorized folder view built from relative symlinks mirroring the
    README sections, rebuilt each boot; real .ipynb files never moved,
    and the symlink tree is invisible to the sync state machine
  - AMD-* notebooks shown only on an AMD/HIP host (autodetected)
  - Docker-only strip of the Colab "Run all on Colab" intro sentence
    from unedited notebooks (upstream notebooks unchanged)
  - hoist %%capture above a leading #@title form so the cell runs
  - the per-cell transformers-sidecar log is silent unless
    UNSLOTH_ENABLE_LOGGING=1

Dependency pinning and naming: the curated notebook extras are pinned to
their resolved versions for reproducible rebuilds; decord is split into
its own fail-soft install (no aarch64 wheel). The lean base image is
renamed from :base to :core.

Adds tests/validate_studio_features.py, a static self-test for the
labextension plugins, overrides keys, and branding wiring.
2026-06-25 16:22:41 +00:00
..
jupyter docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
.dockerignore docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
build.sh docker: track latest llama.cpp release + show its update banner in Studio 2026-06-24 01:21:17 +00:00
docker_confirm.ps1 docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
docker_confirm.sh docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
Dockerfile docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
Dockerfile.studio docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
entrypoint.sh docker: pre-load unslothai/notebooks into JupyterLab, edit-safe refresh 2026-06-15 06:35:08 +00:00
fetch_llama_prebuilt.py docker: track latest llama.cpp release + show its update banner in Studio 2026-06-24 01:21:17 +00:00
freeze.sh Add Docker build for Blackwell that runs on any NVIDIA GPU host 2026-05-24 06:52:58 +00:00
hf_pull.sh hf_{push,pull}.sh: use new hf CLI, fall back to deprecated huggingface-cli 2026-05-24 09:40:22 +00:00
hf_push.sh hf_{push,pull}.sh: use new hf CLI, fall back to deprecated huggingface-cli 2026-05-24 09:40:22 +00:00
run.sh docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
setup_qemu.sh Add linux/arm64 (DGX Spark / Grace) support via QEMU at build time 2026-05-24 10:34:59 +00:00
smoke_test.py [pre-commit.ci] auto fixes from pre-commit.com hooks 2026-06-12 04:35:41 +00:00
studio_launch.sh docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
supervisord.conf docker: optional Cloudflare tunnel for JupyterLab (UNSLOTH_JUPYTER_CLOUDFLARE) 2026-06-24 09:55:11 +00:00
test_locally.sh docker: review fixes from the 8-reviewer pass and staging CI 2026-06-12 05:31:24 +00:00
unsloth_colab_compat.py docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
unsloth_ipython_startup.py docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
unsloth_jupyter_tunnel.sh docker: optional Cloudflare tunnel for JupyterLab (UNSLOTH_JUPYTER_CLOUDFLARE) 2026-06-24 09:55:11 +00:00
unsloth_llama_update.sh docker: add unsloth-llama-update for in-place llama.cpp prebuilt updates 2026-06-24 06:41:33 +00:00
unsloth_nb_compat.py docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
unsloth_nb_content_sig.py [pre-commit.ci] auto fixes from pre-commit.com hooks 2026-06-16 03:49:07 +00:00
unsloth_nb_strip_colab.py docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
unsloth_nb_view.py docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00
unsloth_pip_shim.py [pre-commit.ci] auto fixes from pre-commit.com hooks 2026-06-15 03:13:48 +00:00
unsloth_run.py [pre-commit.ci] auto fixes from pre-commit.com hooks 2026-06-15 03:13:48 +00:00
unsloth_studio_update.sh docker: add unsloth-studio-update for in-place Studio updates 2026-06-24 06:16:54 +00:00
unsloth_sync_notebooks.sh docker: Colab-grade JupyterLab and Studio UX for the Blackwell image 2026-06-25 16:22:41 +00:00