Single Container Environments#

When you create an AI Workbench project, you must choose a starting point for the development environment:
You can use a pre-configured base image from NVIDIA NGC
Or you can use a custom base image
Overview of Project Containers#
Workbench handles your development environment in a single container called the project container.
The project container is built on a base image that is pulled from a container registry
The choice of base image is versioned and kept in the project specification, i.e. the
spec.yaml
fileThe project creation flow in the Desktop App or CLI has a step for selecting a base image from a set of pre-configured defaults hosted by NVIDIA
The creation flow also lets you enter a URL for a custom base image, however that base image must satisfy some technical requirements
You can further customize the environment in a few different ways, both for build and runtime.
You can add packages and configure the container environment, and your changes will be built into the container
You can use scripts to customize the container environment when it is built
Workbench will use various runtime configurations you set to determine how the container is run
NVIDIA Default Containers#
NVIDIA provides default containers that you can choose as the starting point for each new AI Workbench project. Each default environment has Python and JupyterLab pre-installed. The Pytorch environment has TensorBoard installed.
The NVIDIA-provided default environments include the following:
Note
For the full list of available containers, see NVIDIA NGC Containers.
Bring Your Own Container (BYOC)#
You can use your own container as the starting point for a new project.
It requires some technical work to make sure the base image satisfies the necessary technical requirements.
The base image should be a Debian-based container
The base image must have image labels according to the Workbench container label specification
The base image must be published to a container registry that you can access from the host
Note
Workbench supports pulling containers from private registries on NGC, GitHub.com, GitLab.com, and self-hosted GitLab.
It does not yet support pulling from private registries on other platforms, e.g. DockerHub.
Customize Your Container Environment#
If the default container environments for AI Workbench do not meet your needs, you can customize your environment in one of the following ways:
If you want to use one of the pre-built containers and make simple customizations, such as adding packages, see Walkthrough: Customize Your Environment and Development Environments
If you want to change the behavior of the container environment for a single project, see Customize Your Container
If you want to create a fully-custom container that you can use for your projects, see Use Your Own Container
Tip
To run additional isolated environments for your project, see Multi-Container Environments.