Create a workstation configuration

Learn how to get started creating a workstation configuration with Cloud Workstations.

A workstation configuration acts as a template for the creation of consistent workstations for multiple developers, and specifies configuration settings such as machine type, zones, disk size, tools, and preinstalled libraries. Any operations performed on a workstation configuration, such as changing the machine type or container image, reflect on each workstation the next time the workstation starts up.

This section explains the steps of creating a workstation configuration:

  1. Configure basics
  2. Define machine settings
  3. Customize the environment
  4. Add users
  5. Add labels and tags

To follow step-by-step guidance for this task directly in the Google Cloud console, click Guide me:

Guide me


Before you begin

Before you begin using Cloud Workstations, be sure that you have the required permissions and that you complete these required setup steps. You can skip this section if you've already completed this setup.

  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.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

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

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. Enable the Cloud Workstations API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  7. Make sure that you have a Cloud Workstations Admin IAM role on the project so that you can create workstation configurations. To check your IAM roles in the Google Cloud console, go to the IAM page:

    Go to IAM

  8. Cloud Workstations are hosted on VMs booted from Compute Engine's preconfigured public Container-Optimized OS (COS) images. If the constraints/compute.trustedimageProjects organization policy constraint is enforced, you must set image access constraints to allow users to create boot disks from projects/cos-cloud or all public images.
  9. Cloud Workstations uses Private Service Connect to connect to Google-managed services. If the constraints/compute.restrictPrivateServiceConnectProducer organization policy constraint is enforced in your organization, you must add Google as an allowed producer (under:organizations/433637338589).
  10. If the constraints/compute.disablePrivateServiceConnectCreationForConsumers organization policy constraint is enforced in your organization, you must ensure that Private Service Connect endpoints connecting to Google APIs (GOOGLE_APIS) are allowed. If you configure private clusters, endpoints connecting to published services (SERVICE_PRODUCERS) must also be allowed.
  11. Optional: Enable the Container File System API to allow faster workstation startup.

    Enable the Container File System API

    For more information, see Reduce workstation startup time with Image streaming.

Configure basics

To configure the basics of a workstation configuration, follow these steps:

  1. In the console, navigate to Cloud Workstations > Workstation configurations.

    Go to Workstation configurations

  2. From the Workstation configurations page, click add_boxCreate.

  3. In the Name field, enter test-configuration as the name of your configuration.

  4. In the Region field, select the region of the workstation cluster that you want to use for this configuration, or select the region where you want to create a cluster.

  5. From the Clusters list, select your workstation cluster, and then click Continue.

    If no workstation cluster is available in the selected region, a cluster is created automatically along with your configuration. The new cluster is created with default settings, and you can adjust them by clicking Customize cluster settings. For more information about workstation cluster settings, see Create a workstation cluster.

  6. For Machine preset, select one of the preconfigured options (for example, Moderate), or select Custom to customize compute and storage settings.

  7. For Quick start workstations, select Enabled for faster workstation startup or Disabled for lower cost.

    This value specifies the number of virtual machines (VMs) kept in a pre-started state, which enables faster workstation start times. However, your project is billed for these VMs.

  8. In the Code editors menu, choose the Cloud Workstations Base Editor (Code OSS for Cloud Workstations). If your organization prefers a different IDE, you can also choose from the list of preconfigured IDEs. If you don't want to use a preconfigured image, you can choose a custom image on the Environment settings page.

  9. Click Continue to progress to the Machine configuration page.

Define machine settings

  1. To use a machine type other than the preset, select a Machine type based on your needs. For example, you might choose e2-standard-4 (4 CPU, 16 GB memory).