unsloth/docker
Daniel Han 08f9b67f60 docker: optional Cloudflare tunnel for JupyterLab (UNSLOTH_JUPYTER_CLOUDFLARE)
Mirror the public-link convenience Studio already has for its own UI, for
JupyterLab. Off by default; opt in two ways:

  docker run -e UNSLOTH_JUPYTER_CLOUDFLARE=1 ... unsloth/unsloth
  docker exec <container> unsloth-jupyter-tunnel --force

unsloth-jupyter-tunnel waits for JupyterLab, reuses a cached cloudflared (or
fetches the static binary for the arch, no account needed), and starts a
quick tunnel to the Jupyter port; the https://<name>.trycloudflare.com URL is
printed to docker logs. supervisord runs it as the jupyter-cloudflare program,
autostarted only when UNSLOTH_JUPYTER_CLOUDFLARE=1 (studio_launch.sh exports a
0 default so the autostart gate expands, matching the sshd pattern). JupyterLab
still enforces its password, so the tunnel is not an open door.

Verified: the helper fetches cloudflared and mints a working trycloudflare URL
that reaches JupyterLab (HTTP 200) inside a running container.
2026-06-24 09:55:11 +00:00
..
.dockerignore docker: optional Cloudflare tunnel for JupyterLab (UNSLOTH_JUPYTER_CLOUDFLARE) 2026-06-24 09:55:11 +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_confirm: accept locally built images when pull fails 2026-06-12 18:06:40 +00:00
docker_confirm.sh docker_confirm: accept locally built images when pull fails 2026-06-12 18:06:40 +00:00
Dockerfile docker: track latest llama.cpp release + show its update banner in Studio 2026-06-24 01:21:17 +00:00
Dockerfile.studio docker: optional Cloudflare tunnel for JupyterLab (UNSLOTH_JUPYTER_CLOUDFLARE) 2026-06-24 09:55:11 +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: review fixes from the 8-reviewer pass and staging CI 2026-06-12 05:31:24 +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: optional Cloudflare tunnel for JupyterLab (UNSLOTH_JUPYTER_CLOUDFLARE) 2026-06-24 09:55:11 +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_ipython_startup.py [pre-commit.ci] auto fixes from pre-commit.com hooks 2026-06-15 03:13:48 +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 [pre-commit.ci] auto fixes from pre-commit.com hooks 2026-06-15 03:13:48 +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_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: heal deleted notebooks on boot + fix notebooks helper dockerignore 2026-06-16 06:14:45 +00:00