Creating an image from a disk snapshot
To create an image from a disk snapshot:
-
In the management console
, select the folder where you want to create the image. -
Select Compute Cloud.
-
In the left-hand panel, select
Snapshots. -
In the line with the appropriate snapshot, click
and select Create image. -
Enter the image name. The naming requirements are as follows:
- The name must be from 3 to 63 characters long.
- It may contain lowercase Latin letters, numbers, and hyphens.
- The first character must be a letter and the last character cannot be a hyphen.
-
If required, provide a text description for the image.
-
To create an optimized image, enable Optimize for deployment.
-
Click Create.
If you do not have the Yandex Cloud command line interface yet, install and initialize it.
The folder specified in the CLI profile is used by default. You can specify a different folder using the --folder-name
or --folder-id
parameter.
-
View a description of the CLI command to create an image:
yc compute image create --help
-
Get a list of snapshots in the default folder:
yc compute snapshot list
Result:
+----------------------+-----------------+----------------------+--------+----------------------------+ | ID | NAME | PRODUCT IDS | STATUS | DESCRIPTION | +----------------------+-----------------+----------------------+--------+----------------------------+ | fd8rlt1u2rf0l******* | first-snapshot | f2ecl5vhsftd******** | READY | my first snapshot via CLI | | fhmolt1u2rf0******** | second-snapshot | f2eclmol5lps******** | READY | my second snapshot via CLI | +----------------------+-----------------+----------------------+--------+----------------------------+
-
Select the ID (
ID
) or the name (NAME
) of the desired snapshot. -
Create an image in the default folder:
yc compute image create \ --name first-image \ --source-snapshot-name first-snapshot \ --description "my first image via yc"
This command will create an image named
first-image
and the descriptionmy first image via yc
from thefirst-snapshot
snapshot.To create an optimized image, use the
--pooled
flag:yc compute image create \ --name first-image \ --source-snapshot-name first-snapshot \ --description "my first image via yc" \ --pooled
If you don't have Terraform, install it and configure the Yandex Cloud provider.
-
Describe the resource parameters in the
yandex_compute_image
configuration file.Here is an example of the configuration file structure:
resource "yandex_compute_image" "image-1" { name = "<image_name>" source_snapshot = "<snapshot_ID>" }
For more information about resources you can create with Terraform, see the provider documentation
. -
Make sure the configuration files are valid.
-
In the command line, go to the directory where you created the configuration file.
-
Run a check using this command:
terraform plan
If the configuration is described correctly, the terminal will display a list of created resources and their parameters. If the configuration contains any errors, Terraform will point them out.
-
-
Deploy cloud resources.
-
Run this command:
terraform apply
-
Confirm that you want to create the resources.
All the resources you need will then be created in the specified folder. You can check the new resources and their configuration using the management console
. -
- Get the list of snapshots using the list REST API method for the Snapshot resource or the SnapshotService/List gRPC API call.
- Create an image using the create REST API method for the Image resource or the ImageService/Create gRPC API call. Specify the snapshot ID in your request.
An image just created will have the CREATING
status. Wait until the image status changes to READY
before using it.