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-2025081902

This image is built on top of:

nvidia/cuda:11.7.1-cudnn8-devel-ubuntu20.04

and 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.sh script automatically launches all necessary services on container startup.

Environment Variables

Variable
Description

JUPYTER_PASSWORD

Sets the login password for Jupyter. If not provided, JupyterLab will fail to start.

Exposed Ports

Port
Description

22

SSH service port — required for remote login.

8888

JupyterLab web interface port — required for browser access.

These ports must be exposed; otherwise, SSH and JupyterLab access will be unavailable.

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

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:

  1. Log in to the Yotta Console.

  2. Navigate to Compute → Elastic Deployment or Pod Management.

  3. Select Deploy → choose Custom Image.

  4. Enter the image name and configuration.

  5. 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?