Custom Images
Overview
Yotta provides a set of official base images pre-configured for GPU workloads, designed to help developers quickly build and launch compute environments for AI training, inference, and experimentation.
These images are preinstalled with the essential libraries, tools, and services (e.g., Python, JupyterLab, and SSH) required for immediate use. You can also extend these images through secondary builds to include your own dependencies, frameworks, and configurations.
Base Image Information
Image name:
yottalabsai/pytorch:2.8.0-py3.11-cuda12.8.1-cudnn-devel-ubuntu22.04-2025081902This image is built on top of:
nvidia/cuda:11.7.1-cudnn8-devel-ubuntu20.04and comes preloaded with:
Python 3.10
JupyterLab
SSH
Common developer utilities
Key Features
✅ GPU-Ready Environment Supports CUDA 11.7 and cuDNN 8 for GPU acceleration.
✅ Preinstalled Python & JupyterLab Includes Python 3.10, pip, and JupyterLab for notebook-based development.
✅ Integrated SSH Enables remote terminal access for debugging or file management.
✅ Auto-Start Script The
/start.shscript automatically launches all necessary services on container startup.
Environment Variables
JUPYTER_PASSWORD
Sets the login password for Jupyter. If not provided, JupyterLab will fail to start.
Important: Always set this variable before launching the container to ensure proper JupyterLab initialization.
Exposed Ports
22
SSH service port — required for remote login.
8888
JupyterLab web interface port — required for browser access.
Building a Custom Image
You can easily extend the base image by adding dependencies or source code through a Dockerfile.
Example
FROM yottalabsai/pytorch:2.8.0-py3.11-cuda12.8.1-cudnn-devel-ubuntu22.04-2025081902
# Add custom dependencies or your own code
RUN pip install -U pip && \
pip install pandas matplotlib💡 This approach allows you to tailor the environment for your specific workload — for example, installing additional ML libraries, internal tools, or custom startup scripts.
Important Notes
⚠️ Do Not Modify /start.sh
This startup script is responsible for initializing all services (SSH, Jupyter, etc.). Modifying or overriding it will cause the container to fail to start.
⚠️ Set JUPYTER_PASSWORD
Without this environment variable, JupyterLab cannot be initialized properly.
⚠️ Expose Ports 22 and 8888 These are required for SSH and Jupyter web access respectively.
Using a Custom Image in the Yotta Console
Once your secondary (custom) image is built and pushed to your image registry:
Log in to the Yotta Console.
Navigate to Compute → Elastic Deployment or Pod Management.
Select Deploy → choose Custom Image.
Enter the image name and configuration.
Launch the Pod.

Your Pod will now run using your custom-built image — with JupyterLab and SSH enabled for development access.

Summary
Yotta’s Official Base Images provide a streamlined, GPU-optimized foundation for AI workloads. By extending these images, developers can easily create customized environments that match specific workflow requirements while maintaining compatibility with Yotta’s Pod and Elastic Deployment.
Last updated
Was this helpful?