Изменить ВМ с Container Optimized Image
Статья создана
Обновлена 28 апреля 2025 г.
Измените параметры Docker-контейнера на виртуальной машине, созданной из образа Container Optimized Image.
Консоль управления
CLI
- В консоли управления
выберите каталог, в котором была создана ВМ. - В списке сервисов выберите Compute Cloud.
- Нажмите на строку с ВМ, которую вы хотите изменить.
- Нажмите кнопку Изменить ВМ на верхней панели.
- Внесите необходимые изменения в блоке Настройка Docker-контейнера.
- Нажмите Сохранить изменения.
-
Посмотрите описание команды CLI для обновления ВМ:
yc compute instance update-container --help -
Получите уникальный идентификатор ВМ. Для этого нажмите на строку с ее именем в разделе Compute Cloud в консоли управления
или воспользуйтесь командой CLI:yc compute instance listРезультат:
+----------------------+-------+-------------------+---------+----------------------------------+-------------+ | ID | NAME | ZONE ID | STATUS | EXTERNAL IP | INTERNAL IP | +----------------------+-------+-------------------+---------+----------------------------------+-------------+ | epdbf646ge5q******** | my-vm | kz1-b | RUNNING | 84.201.155.117 | 172.18.0.21 | +----------------------+-------+-------------------+---------+----------------------------------+-------------+ -
Обновите ВМ.
В зависимости от способа создания ВМ, есть несколько способов обновления:
Способ создания Обновить с помощью --container-imageОбновить с помощью --docker-compose-fileС помощью параметров --container-*Старый Docker-контейнер удаляется, создается новый Docker-контейнер. Старый Docker-контейнер удаляется, создаются новые Docker-контейнеры (описанные в docker-compose.yaml файле). С помощью спецификации в файле docker-compose.yaml Старые Docker-контейнеры (описанные в docker-compose.yaml файле) удаляются, создается новый, описанный с помощью параметров --container-*Создаются только новые (добавленные в docker-compose.yaml файл) или измененные Docker-контейнеры. Удаляются Docker-контейнеры, отсутствующие в новом в docker-compose.yaml файле. -
Обновите ВМ, задав новые параметры:
yc compute instance update-container epdbf646ge5q******** \ --container-name=my_vm_new_version \ --container-image=cr.yandexcloud.kz/mirror/ubuntu:18.04 \ --container-env=KEY1=VAL1,KEY2=VAL2 \ --remove-container-env=KEY3 \ --container-stdin=false \ --container-restart-policy=NeverГде:
--container-name— имя Docker-контейнера.--container-image— имя Docker-образа для запуска Docker-контейнера.--container-env— переменные окружения, доступные внутри Docker-контейнера.--remove-container-env— исключение переменных окружения, ключи которых указаны в параметре.--container-command— команда, которая будет выполнена при запуске Docker-контейнера.--container-stdin— выделение буфера для потока ввода во время выполнения Docker-контейнера.--container-restart-policy— параметры для команды, указанной с помощью--container-command.--container-privileged— запуск Docker-контейнера в привилегированном режиме.
Результат:
done (2s) id: epdbf646ge5q******** folder_id: b1g88tflru0e******** created_at: "2023-03-13T09:44:03Z" name: my-vm ... -
Обновите ВМ, указав спецификацию нескольких Docker-контейнеров:
yc compute instance update-container epdbf646ge5q******** --docker-compose-file=<путь_к_файлу>Где
--docker-compose-file— путь к файлу со спецификацией Docker-контейнеров.Результат:
done (2s) id: fhma9omhj2e7******** folder_id: b1g88tflru0e******** created_at: "2023-03-13T17:08:48Z" name: coi-vm ...
-