Jupyter Lab
Interactive development environment for notebooks, code, and data
JupyterLab is a web-based interactive development environment for notebooks, code, and data, backed by remote compute. This image bundles JupyterLab on top of Miniconda, served straight to the browser — no desktop or VNC.
Usage
1. Deploy
dxflow workflow create --identity jupyter hub://jupyter
# Start with defaults, or tune per run with --override
dxflow workflow start jupyter
dxflow workflow start jupyter \
--override env.app.PASSWORD=my-strong-pass \
--override env.app.WORKING_DIR=projects/analysis
# Publish the web port on an HTTPS link
dxflow workflow start jupyter --link
2. Open the notebook
Open your browser at http://localhost:8888 and sign in with the password you set in PASSWORD. JupyterLab opens on the working directory. A start given --link publishes port 8888 at an HTTPS URL printed on the start line, opening JupyterLab from anywhere.
3. Persist data
Notebooks and data live under /volume, so your work survives restarts — mount a local directory there to keep it.
Configuration
name: jupyter
tags:
- analytics
steps:
- name: app
runtime: docker
mode: parallel
image: ghcr.io/dxflow-ai/jupyter:latest
volumes:
- name: volume
host: ./volume
container: /volume
ports:
- name: web
host: "8888"
container: "8888"
env:
- PASSWORD=dxflow
- WORKING_DIR=
resources:
cpu: "4"
memory: 8G
link: web
[volume]
app.volume = ./volume
[port]
app.web = 8888
[env]
app.PASSWORD = dxflow
app.WORKING_DIR =
[resource]
app.cpu = 4
app.memory = 8G
{
"arch": ["amd64", "arm64"],
"image": "ghcr.io/dxflow-ai/jupyter:latest",
"version": "4.2",
"minimum": {
"cpu": 4,
"memory": "8G",
"storage": "50G"
}
}
Notes
WORKING_DIRis resolved under/volume(empty opens/volume). Set it to a subpath likeprojects/analysisto open straight into a project.- Set a strong
PASSWORD; it defaults todxflow, which every reader of this page knows. JupyterLab asks for it on a sign-in page and the token is disabled, so the password is the only way in. - Miniconda is at
/opt/minicondaand on thePATH— usecondaandpipfrom a notebook terminal to add libraries such asnumpy,pandas,scikit-learn, or extensions likejupyterlab-git.