Я создал образ Ubuntu, выполнив следующий код
{
"builders": [{
"type": "azure-arm",
"subscription_id": "XXXXXX",XXXXXXXX
"client_id": "XXXXXXX",
"client_secret": "06XXXXXXX",
"tenant_id": "41X",XXXXXX
"managed_image_resource_group_name": "myResourceGroup",
"managed_image_name": "myubuntuPackerImage1234",
"os_type": "Linux",
"image_publisher": "Canonical",
"image_offer": "UbuntuServer",
"image_sku": "16.04-LTS",
"location": "East US",
"vm_size": "Standard_DS2_v2"
}],
"provisioners": [{
"execute_command": "chmod +x {{ .Path }}; {{ .Vars }} sudo -E sh '{{ .Path }}'",
"inline": [
"apt-get update",
"apt-get upgrade -y",
"apt-get -y install nginx",
"/usr/sbin/waagent -force -deprovision+user && export HISTSIZE=0 && sync"
],
"inline_shebang": "/bin/sh -x",
"type": "shell"
}]
}
сборка упаковщика ubuntu.json
он будет успешно построен, и результат будет
OSType: Linux
ManagedImageResourceGroupName: myResourceGroup
ManagedImageName: packerimagewin2019up
ManagedImageId: /subscriptions/XXXXXXXXXX/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myubuntuPackerImage1234
ManagedImageLocation: eastus
Нашел один пиар - https://github.com/hashicorp/packer/issues/3785 но в случае управления диском, как получить URL?
если я бегу az image list
он не покажет вам URL-адрес большого двоичного объекта .vdf, как я могу использовать приведенный выше вывод для создания нового обновления существующего изображения myubuntuPackerImage1234?
Насколько я понимаю, вы хотите использовать образ, который вы ранее создали с помощью Packer, в качестве исходного образа для повторного запуска Packer, верно?
Пример, на который вы ссылаетесь, не будет работать, потому что в этом примере используется упаковщик для создания образа диска на основе VHD (это более старый метод), тогда как вы используете управляемые образы / диски и поэтому не имеете URL-адреса так же, как VHD .
Насколько я могу судить, единственный способ использовать существующее управляемое изображение с упаковщиком - это опубликовать это изображение в общей галерее изображений (вы можете сделать это вручную или как часть сборки упаковщика). Затем вы можете ссылаться на это изображение из галереи, используя теги и параметр shared_image_gallery.
В качестве альтернативы вы можете создать исходный образ как VHD, а затем использовать URL-адрес, но тогда вы вернетесь к более старому методу.