Create a user-managed notebooks instance with a custom container

You can create a user-managed notebooks instance based on a custom container. Using a custom container lets you customize a user-managed notebooks environment for your specific needs. The container must be accessible to your Google Cloud service account and expose a service on port 8080. We recommend creating a container derived from a Deep Learning Containers image, because those images are already configured to be compatible with user-managed notebooks.

How custom container kernels are updated

Vertex AI Workbench pulls the latest container image for your kernel:

  • When you create your instance.

  • When you upgrade your instance.

  • When you start your instance.

The custom container kernel doesn't persist when your instance is stopped, so each time your instance is started, Vertex AI Workbench pulls the latest version of the container image.

If your instance is running when a new version of a container is released, your instance's kernel isn't updated until you stop and start your instance.

Before you begin

Before you can create a user-managed notebooks instance, you must have a Google Cloud project and enable the Notebooks API for that project.
  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Notebooks API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Notebooks API.

    Enable the API

  8. If you plan to use GPUs with your user-managed notebooks instance, check the quotas page in the Google Cloud console to ensure that you have enough GPUs available in your project. If GPUs are not listed on the quotas page, or you require additional GPU quota, you can request a quota increase. See Requesting an increase in quota on the Compute Engine Resource quotas page.

Required roles

If you created the project, you have the Owner (roles/owner) IAM role on the project, which includes all required permissions. Skip this section and start creating your user-managed notebooks instance. If you didn't create the project yourself, continue in this section.

To ensure that your user account has the necessary permissions to create a Vertex AI Workbench user-managed notebooks instance, ask your administrator to grant your user account the following IAM roles on the project:

For more information about granting roles, see Manage access.

Your administrator might also be able to give your user account the required permissions through custom roles or other predefined roles.

Make sure your custom container is ready

Make sure you have a custom container that is accessible to your Google Cloud service account. For information about how to create a custom container from a Deep Learning Containers image, see Creating a derivative container.

Create an instance with a custom container

To create a user-managed notebooks instance with a custom container, complete the following steps:

  1. In the Google Cloud console, go to the User-managed notebooks page. Or go to notebook.new (https://notebook.new) and skip the next step.

    Go to User-managed notebooks

  2. Click  Create new.

  3. Click Advanced options.

  4. On the Create instance page, in the Details section, provide the following information for your new instance:

    • Name: a name for your new instance
    • Region and Zone: Select a region and zone for the new instance. For best network performance, select the region that is geographically closest to you. See the available user-managed notebooks locations.
  5. In the Environment section, in the Environment field, select Custom container.

  6. In the Docker container image field, add a Docker container image in one of the following ways:

    • Enter a Docker container image path. For example, to use a TensorFlow 2.12 container image with accelerators from Deep Learning Containers, enter us-docker.pkg.dev/deeplearning-platform-release/gcr.io/tf-cpu.2-12.py310.
    • Click Select to add a Docker container image from Artifact Registry. Then on the Artifact Registry tab where your container image is stored, change the project to the project that includes your container image, and select your container image.
  7. Make the rest of your selections, or leave them on their default setting. For more information about these settings, see Create a user-managed notebooks instance with specific properties.

  8. Click Create. Vertex AI Workbench creates a user-managed notebooks instance for you, based on your custom container.

What's next