Getting public image info
When creating a VM instance, you need to select an image with the software you want to use.
Getting a list of public images
To get a list of public images in Yandex Compute Cloud:
You can view a list of public images when creating a virtual machine:
- In the management console
, open the folder where you want to create your VM. - Navigate
to Compute Cloud. - In the left-hand panel, select
Virtual machines and click Create virtual machine. - Under Boot disk image, click Show all Marketplace products. You will see a list of all available public images.
If you do not have the Yandex Cloud CLI yet, install and initialize it.
A list of public images resides in the standard-images folder.
-
Get a list of all public images.
To get a list of available images using the CLI, run this command:
yc compute image list \ --folder-id standard-imagesResult:
+----------------------+-------------------------------------+--------------------------+----------------------+--------+ | ID | NAME | FAMILY | PRODUCT IDS | STATUS | +----------------------+-------------------------------------+--------------------------+----------------------+--------+ ... | fdvk34al8k5n******** | centos-7-1549279494 | centos-7 | dqni65lfhvv2******** | READY | | fdv7ooobjfl3******** | windows-2016-gvlk-1548913814 | windows-2016-gvlk | dqnnc72gj2is******** | READY | | fdv4f5kv5cvf******** | ubuntu-1604-lts-1549457823 | ubuntu-1604-lts | dqnnb6dc7640******** | READY | ... +----------------------+-------------------------------------+--------------------------+----------------------+--------+Where:
-
ID: Image ID. -
NAME: Image name. -
FAMILY: ID of the image family the image belongs to. -
PRODUCT IDS: IDs of Yandex Cloud Marketplace products associated with the image. -
STATUS: Current status of the image. It may take one of the following values:STATUS_UNSPECIFIED: Image status is not defined.CREATING: Image is being created.READY: Image is ready to use.ERROR: You cannot use the image due to an issue.DELETING: Image is being deleted.
Note
By default, the command returns only the first 1,000 images. To view the full list of images, include the
--limit 0parameter. -
-
Get a list of IDs of available image families:
yc compute image list \ --folder-id standard-images \ --limit 0 \ --jq '.[].family' | sort | uniqResult:
... ubuntu-2204-lts ubuntu-2204-lts-oslogin ubuntu-2004-lts-gpu ... -
Get a list of available public images belonging to a particular family:
yc compute image list \ --folder-id standard-images \ | grep <family_ID>Where
<family_ID>is the image family ID, e.g.,ubuntu-2204-lts-oslogin.Result:
... | fd827n44qr0q******** | ubuntu-2204-lts-oslogin-v20240617 | ubuntu-2204-lts-oslogin | f2eofgd2cj0e******** | READY | | fd827ukfjohd******** | ubuntu-2204-lts-oslogin-v20240701 | ubuntu-2204-lts-oslogin | f2evubhrcfsh******** | READY | | fd82sdt0b96a******** | ubuntu-2204-lts-oslogin-v20240304 | ubuntu-2204-lts-oslogin | f2ecb2d55npl******** | READY | ...
For more information about the yc compute image list command, see the CLI reference.
-
Get an IAM token used for authentication in these examples:
-
To get a list of Yandex Cloud public images, use the List REST API method for the Image resource or the ImageService/List gRPC API call. In your request, specify the following parameters:
- Specify
standard-imagesas the folder ID. - The folder contains many images, so specify
pageSize=1000or use the obtained value ofnextPageTokento get the next page. - Write the result to a file, e.g.,
output.json.
Request example:
export IAM_TOKEN=CggaATEVAgA... curl \ --header "Authorization: Bearer ${IAM_TOKEN}" \ "https://compute.api.cloud.yandex.net/compute/v1/images?folderId=standard-images&pageSize=1000" > output.jsonNote
To only write info about a specific image family to a file, use
grep. - Specify
You can also view information about all available public images in Cloud Marketplace.
Getting detailed information about a public image
To get detailed information about a public image, including its ID:
-
In the management console
, select the folder. -
Navigate
to Compute Cloud. -
In the left-hand panel, select
Virtual machines and click Create virtual machine. -
Under Boot disk image, click Show all Marketplace products.
You will see a list of all available public images.
-
In the list that opens, select the public image you need. If required, use the search bar or filter.
The action will open a window with detailed information about the public image. The image ID is displayed at the bottom of the page under Product IDs in the VM Image field.
If you do not have the Yandex Cloud CLI yet, install and initialize it.
-
See the description of the CLI command for getting information about a public image:
yc compute image get --help -
Get image info by specifying its ID:
yc compute image get <image_ID>Result:
id: fd8udtumfhpr******** folder_id: standard-images created_at: "2026-08-10T18:33:51Z" name: ubuntu-2404-lts-oslogin-v20260810 description: Ubuntu 24.04 lts with oslogin v20260807040314 labels: version: "20260807040314" x-hopper-operation-id: d9pm50s8l14n******** x-hopper-source-image-id: fd8go5if6b3c******** family: ubuntu-2404-lts-oslogin size: "10737418240" storage_size: "2969567232" min_disk_size: "10737418240" product_ids: - f2e00cd2gepc******** status: READY os: type: LINUX pooled: true hardware_generation: legacy_features: pci_topology: PCI_TOPOLOGY_V2The public image ID is specified in the
idfield. -
Get a list of IDs of available image families:
yc compute image list \ --folder-id standard-images \ --limit 0 \ --jq '.[].family' | sort | uniqResult:
... ubuntu-2204-lts ubuntu-2204-lts-oslogin ubuntu-2004-lts-gpu ... -
Get information about the latest public image within a specific image family by specifying the family ID you obtained in the previous step:
yc compute image get-latest-from-family <family_ID> \ --folder-id standard-imagesResult:
id: fd8udtumfhpr******** folder_id: standard-images created_at: "2026-08-10T18:33:51Z" name: ubuntu-2404-lts-oslogin-v20260810 description: Ubuntu 24.04 lts with oslogin v20260807040314 labels: version: "20260807040314" x-hopper-operation-id: d9pm50s8l14n******** x-hopper-source-image-id: fd8go5if6b3c******** family: ubuntu-2404-lts-oslogin size: "10737418240" storage_size: "2969567232" min_disk_size: "10737418240" product_ids: - f2e00cd2gepc******** status: READY os: type: LINUX pooled: true hardware_generation: legacy_features: pci_topology: PCI_TOPOLOGY_V2The public image ID is specified in the
idfield.
With Terraform
Terraform is distributed under the Business Source License
For more information about the provider resources, see the guides on the Terraform
If you do not have Terraform yet, install it and configure the Yandex Cloud provider.
To manage infrastructure using Terraform under a service account or user accounts (a Yandex account, a federated account, or a local user), authenticate using the appropriate method.
To get public image info using Terraform:
-
Add the
dataandoutputsections to the Terraform configuration file:data "yandex_compute_image" "my_image" { family = "<family_name>" } output "image" { value = data.yandex_compute_image.my_image }Where:
-
data "yandex_compute_image": Description of the public image as a data source:-
family: ID of the image family the image belongs to.To get the image family ID, use the
yc compute image listYandex Cloud CLI command. For more information, see Getting a list of public images.
-
-
output "instance_domain": Output variable that contains information about the latest public image in this family:value: Return value.
For more on the properties of the
yandex_compute_imagedata source, see this provider guide. -
-
Create the resources:
-
In the terminal, navigate to the configuration file directory.
-
Make sure the configuration is correct using this command:
terraform validateIf the configuration is valid, you will get this message:
Success! The configuration is valid. -
Run this command:
terraform planYou will see a list of resources and their properties. No changes will be made at this step. Terraform will show any errors in the configuration.
-
Apply the configuration changes:
terraform apply -
Type
yesand press Enter to confirm the changes.
Terraform will create all required resources and display their output variables. To check the results, run this command:
terraform outputResult:
image = { "created_at" = "2026-08-10T18:33:51Z" "description" = "Ubuntu 24.04 lts with oslogin v20260807040314" "family" = "ubuntu-2404-lts-oslogin" "folder_id" = "standard-images" "hardware_generation" = tolist([ { "generation2_features" = tolist([]) "legacy_features" = tolist([ { "pci_topology" = "PCI_TOPOLOGY_V2" }, ]) }, ]) "id" = "fd8udtumfhpr********" "image_id" = "fd8udtumfhpr********" "kms_key_id" = tostring(null) "labels" = tomap({ "version" = "20260807040314" "x-hopper-operation-id" = "d9pm50s8l14n********" "x-hopper-source-image-id" = "fd8go5if6b3c********" }) "min_disk_size" = 10 "name" = "ubuntu-2404-lts-oslogin-v20260810" "os_type" = "linux" "pooled" = true "product_ids" = toset([ "f2e00cd2gepc********", ]) "size" = 2 "status" = "ready" }The public image ID is specified in the
image_idfield. -
To get detailed information about an image by its ID, use the Get REST API method for the Image resource or the ImageService/Get gRPC API call.
To get detailed information about the latest image within an image family, use the GetLatestByFamily REST API method for the Image resource or the ImageService/GetLatestByFamily gRPC API call.