Pandas/NumPy/scientific workloads often duplicate data in memory during transforms.
Data-analysis notebooks.Wymagania sprzętowe JupyterLab: pamięć RAM, procesor, pamięć masowa i notebooki
Zaplanuj sprzęt do JupyterLab pod kątem pamięci RAM, procesora, zbiorów danych, jąder i stosów Docker, z praktycznymi zaleceniami dotyczącymi niestandardowej instalacji ZimaOS dla notebooków.
JupyterLab requirements at a glance
JupyterLab itself has no universal CPU/RAM/disk minimum because the notebook kernel workload determines resource use. Official Jupyter Docker Stacks provide ready-to-run images for x86_64 and aarch64, with JupyterLab as the default frontend.
- RAM
- No numerical official JupyterLab minimum published. A lightweight Python notebook can use little memory; data science, pandas, PyTorch and large datasets can require many gigabytes.
- CPU
- No numerical official core minimum. Notebook code, compilation, parallel workloads and scientific libraries determine CPU demand.
- Storage
- No universal official minimum. Notebooks, datasets, environments, package caches and model files determine capacity.
- Docker images
- Official Jupyter Docker Stacks run JupyterLab by default and publish x86_64 and aarch64 images.
- GPU
- Not required for JupyterLab itself. Official CUDA-enabled PyTorch/TensorFlow notebook variants exist for GPU workloads.
- Best Zima starting point
- ZimaBoard 2 1664 is a practical CPU-only data-science host; choose Zima hardware based on the actual notebooks, datasets and ML libraries rather than JupyterLab itself.
From official requirements to the right setup
Size JupyterLab from the kernels and datasets you plan to run, not from the browser frontend.
-
Official requirements
Choose an official Jupyter Docker Stack such as base-notebook, scipy-notebook or datascience-notebook; JupyterLab is the default frontend.
-
Confirm your needs
Estimate peak kernel memory. Large pandas DataFrames, NumPy arrays, model weights and multiple simultaneous kernels can dominate RAM.
-
Leave room to grow
Plan persistent notebook/dataset storage by mounting a host directory such as /home/jovyan/work and keep package/environment growth separate.
-
Run it on ZimaOS
On ZimaOS, use Install Custom App with an official quay.io/jupyter image, map port 8888, persist the work directory, and retain token/password authentication behind HTTPS.
Check every playback client
- Notebook type
- Peak dataset size
- Concurrent kernels
- Python/R/Julia packages
- Persistent work directory
- GPU/CUDA requirement
- Authentication/HTTPS
- Other ZimaOS services
Official minimum requirements
JupyterLab and Jupyter Docker Stacks do not publish one universal hardware minimum because notebooks execute arbitrary user workloads.
Do not invent a fixed 2 GB/4 GB minimum for JupyterLab. The correct hardware requirement is the peak memory/CPU/storage demand of the kernels and datasets hosted inside it.
| Requirement | Official minimum | What this supports |
|---|---|---|
| RAM minimum | No universal numerical minimum published | Kernel workload determines memory. |
| CPU minimum | No universal numerical minimum published | Notebook code determines CPU demand. |
| Storage minimum | No universal numerical minimum published | Datasets, environments and notebooks determine capacity. |
| Default frontend | JupyterLab | Current Jupyter Docker Stacks default. |
| Container architectures | x86_64 and aarch64 | Current official Docker Stacks support. |
| Default container port | 8888 | Current Jupyter Docker Stack examples. |
When to upgrade your hardware
JupyterLab should scale when notebook workloads, not the frontend, hit CPU/RAM/storage limits.
Datasets no longer fit comfortably in RAM
Multiple kernels compete for resources
ML models or environments consume large storage
Each notebook kernel is a separate process and can consume substantial memory/CPU.
Multi-user or multi-project systems.Conda packages, datasets, checkpoints and models can grow quickly.
Machine-learning and research workflows.Plan hardware growth with confidence
Scale JupyterLab by matching the server to notebook workloads and persistent datasets.
Use 16 GB for CPU-only data science
Provides practical headroom for Python environments, notebooks and moderate datasets.
ZimaBoard 2 1664.Use SSD-backed datasets and environments
Package imports, caches and large data benefit from fast local storage.
Use SATA/NVMe with ZimaBoard 2 or SSD tiers on ZimaCube 2.Use stronger CPU for parallel/scientific workloads
Compilation, NumPy/SciPy and multi-process notebooks can benefit from more cores.
ZimaCube 2 Pro.Use GPU-capable infrastructure only for GPU notebooks
JupyterLab does not require GPU, but PyTorch/TensorFlow CUDA workloads do.
Choose a GPU-capable host based on exact model/VRAM needs rather than JupyterLab itself.Can it run on ZimaOS?
JupyterLab is not currently confirmed as a public official one-click ZimaOS App Store page in the sources checked for this guide. It can be deployed through Install Custom App using the official Jupyter Docker Stacks.
Custom install JupyterLab in ZimaOS
Use Install Custom App with an official quay.io/jupyter image, map port 8888, and mount a persistent work directory such as /home/jovyan/work.
Custom install JupyterLab in the ZimaOS app ↗Use official Jupyter Docker Stacks
The Jupyter project publishes ready-to-run images where JupyterLab is the default frontend.
Review Jupyter Docker Stacks ↗Persist notebook work outside the container filesystem
Official examples mount host storage into /home/jovyan/work so notebook data survives container recreation.
Review Jupyter container usage ↗Choose Zima hardware for JupyterLab
JupyterLab itself is lightweight; notebooks, datasets and models determine the hardware tier.
Are you running lightweight notebooks or larger CPU/data-science workloads?
ZimaBoard 2 832 is ample for development and modest datasets.
- Basic developmentZimaBoard 2 832
- Better data-science headroomZimaBoard 2 1664
Use stronger CPU and expandable SSD storage.
- Higher-headroom platformZimaCube 2 Pro
These are workload-based recommendations, not official JupyterLab performance tiers.
| Zima hardware | Best for | Example workload | Core configuration | Recommended boundary | Next step |
|---|---|---|---|---|---|
| ZimaBoard 2 832 | Coding, education and light notebooks. | JupyterLab, Python environments and small-to-moderate datasets. |
|
8 GB may be limiting for large DataFrames or multiple kernels. | Get Now |
| ZimaBoard 2 1664 | CPU-only data science and more simultaneous kernels. | JupyterLab, SciPy/pandas workflows and moderate datasets. |
|
16 GB is a practical recommendation, not an official Jupyter requirement. | Get Now |
| ZimaCube 2 Pro | Heavier CPU data science and broader storage needs. | Larger datasets, compilation, parallel notebooks and additional services. |
|
No dedicated GPU is included; GPU notebooks require separate GPU-capable infrastructure. | Get Now |
What the Press Says
Highlights from trusted reviewers worldwide.
“ZimaCube 2: Not just another NAS, tested with 25TB storage, local AI agents, 4K transcoding, and real homelab workflows.”Read full review
“The ZimaBoard 2 is a compact x86 server board that can be turned into a mini NAS, home server, media box, or self-hosting hub.”Read full review
“ZimaCube 2: A modern, high-performance NAS with plenty of room to grow—built for users who want more than basic storage.”Read full review
“Coverage focused on ZimaCube 2's open hardware foundation, no monthly fee, and self-hosting flexibility.”Read full review
Loved by the Community
Stories and reviews from people who build with Zima every day.
Zima Blade Little yet Powerful
Maybe I am not digital natives but I live with PCs since 12 years old in 1984 when IBM PC clone come to my home. Many years have passed and many operating system I've tried. For me Zima blade and CasaOS was a quantum leap for home PC enthusiast and server lab machine to make me stay curious and relevant for this era.
Very good!!
I use ZimaCube Pro as 5th Proxmox cluster node. It runs several VMs and containers, including a VM with GPU passthrough to run a self-hosted LLM. A specific LXC container runs a Samba server for NAS capabilities using four of six RAID 6 SATA HDDs with ZFS.
Great innovation for mini server!
It is very useful and makes a powerful mini server for many purposes, including university and college students in engineering and electronics. Thank you so much for making this server.
Avaliação ZimaBoard 2
Construí um servidor de uso pessoal. O desempenho está muito bom e funciona perfeitamente onde quer que eu esteja. A surpresa é não dependermos de grandes estruturas para termos nosso próprio servidor de dados. Como iniciante, estou gostando bastante do ZimaOS, pois ele é simples e eficiente.
Frequently asked questions
These answers cover JupyterLab RAM, CPU, Docker images, datasets, GPU and ZimaOS deployment.
How much RAM does JupyterLab need?
JupyterLab does not publish a universal numerical RAM minimum; kernel workloads and datasets determine memory use.
How many CPU cores does JupyterLab need?
No universal official core minimum is published.
Which Docker image should I use for JupyterLab?
The official Jupyter Docker Stacks provide base-notebook, scipy-notebook, datascience-notebook and other variants, with JupyterLab as the default frontend.
Does JupyterLab support ARM64?
Yes. Current Jupyter Docker Stacks publish both x86_64 and aarch64 images.
Does JupyterLab need a GPU?
No. A GPU is only needed for notebook workloads such as CUDA-enabled PyTorch or TensorFlow.
How much storage does JupyterLab need?
No universal minimum is published; notebooks, datasets, environments and model files determine capacity.
Can ZimaBoard 2 run JupyterLab?
Yes. The 16 GB model is a practical CPU-only data-science host, while 8 GB suits lighter notebooks.
Why should I persist /home/jovyan/work?
Mounting a host folder there keeps notebooks and project files outside the disposable container filesystem.
What sources informed this JupyterLab hardware guide?
The guide uses current Jupyter Docker Stacks documentation and current Zima product pages.
