Compartir a través de


Imagen Microsoft.VirtualMachineImagesTemplates

Definición de recursos de Bicep

El tipo de recurso imageTemplates se puede implementar con operaciones que tienen como destino:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.VirtualMachineImages/imageTemplates, agregue el siguiente bicep a la plantilla.

resource symbolicname 'Microsoft.VirtualMachineImages/imageTemplates@2024-02-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  properties: {
    autoRun: {
      state: 'string'
    }
    buildTimeoutInMinutes: int
    customize: [
      {
        name: 'string'
        type: 'string'
        // For remaining properties, see ImageTemplateCustomizer objects
      }
    ]
    distribute: [
      {
        artifactTags: {}
        runOutputName: 'string'
        type: 'string'
        // For remaining properties, see ImageTemplateDistributor objects
      }
    ]
    errorHandling: {
      onCustomizerError: 'string'
      onValidationError: 'string'
    }
    managedResourceTags: {}
    optimize: {
      vmBoot: {
        state: 'string'
      }
    }
    source: {
      type: 'string'
      // For remaining properties, see ImageTemplateSource objects
    }
    stagingResourceGroup: 'string'
    validate: {
      continueDistributeOnFailure: bool
      inVMValidations: [
        {
          name: 'string'
          type: 'string'
          // For remaining properties, see ImageTemplateInVMValidator objects
        }
      ]
      sourceValidationOnly: bool
    }
    vmProfile: {
      osDiskSizeGB: int
      userAssignedIdentities: [
        'string'
      ]
      vmSize: 'string'
      vnetConfig: {
        containerInstanceSubnetId: 'string'
        proxyVmSize: 'string'
        subnetId: 'string'
      }
    }
  }
}

Objetos ImageTemplateCustomizer

Establezca el tipo propiedad para especificar el tipo de objeto.

Para archivo, use:

  type: 'File'
  destination: 'string'
  sha256Checksum: 'string'
  sourceUri: 'string'

Para powerShell, use:

  type: 'PowerShell'
  inline: [
    'string'
  ]
  runAsSystem: bool
  runElevated: bool
  scriptUri: 'string'
  sha256Checksum: 'string'
  validExitCodes: [
    int
  ]

Para shell, use:

  type: 'Shell'
  inline: [
    'string'
  ]
  scriptUri: 'string'
  sha256Checksum: 'string'

Para WindowsRestart, use:

  type: 'WindowsRestart'
  restartCheckCommand: 'string'
  restartCommand: 'string'
  restartTimeout: 'string'

Para WindowsUpdate, use:

  type: 'WindowsUpdate'
  filters: [
    'string'
  ]
  searchCriteria: 'string'
  updateLimit: int

Objetos ImageTemplateDistributor

Establezca el tipo propiedad para especificar el tipo de objeto.

Para ManagedImage, use:

  type: 'ManagedImage'
  imageId: 'string'
  location: 'string'

Para SharedImage, use:

  type: 'SharedImage'
  excludeFromLatest: bool
  galleryImageId: 'string'
  replicationRegions: [
    'string'
  ]
  storageAccountType: 'string'
  targetRegions: [
    {
      name: 'string'
      replicaCount: int
      storageAccountType: 'string'
    }
  ]
  versioning: {
    scheme: 'string'
    // For remaining properties, see DistributeVersioner objects
  }

Para VHD, use:

  type: 'VHD'
  uri: 'string'

Objetos DistributeVersioner

Establezca el esquema propiedad para especificar el tipo de objeto.

Para Latest, use:

  scheme: 'Latest'
  major: int

Para source, use:

  scheme: 'Source'

Objetos ImageTemplateSource

Establezca el tipo propiedad para especificar el tipo de objeto.

Para ManagedImage, use:

  type: 'ManagedImage'
  imageId: 'string'

Para PlatformImage, use:

  type: 'PlatformImage'
  offer: 'string'
  planInfo: {
    planName: 'string'
    planProduct: 'string'
    planPublisher: 'string'
  }
  publisher: 'string'
  sku: 'string'
  version: 'string'

Para SharedImageVersion, use:

  type: 'SharedImageVersion'
  imageVersionId: 'string'

Objetos ImageTemplateInVMValidator

Establezca el tipo propiedad para especificar el tipo de objeto.

Para archivo, use:

  type: 'File'
  destination: 'string'
  sha256Checksum: 'string'
  sourceUri: 'string'

Para powerShell, use:

  type: 'PowerShell'
  inline: [
    'string'
  ]
  runAsSystem: bool
  runElevated: bool
  scriptUri: 'string'
  sha256Checksum: 'string'
  validExitCodes: [
    int
  ]

Para shell, use:

  type: 'Shell'
  inline: [
    'string'
  ]
  scriptUri: 'string'
  sha256Checksum: 'string'

Valores de propiedad

imageTemplates

Nombre Descripción Valor
nombre El nombre del recurso string (obligatorio)
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
Etiquetas Etiquetas de recursos. Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas
identidad Identidad de la plantilla de imagen, si está configurada. ImageTemplateIdentity (obligatorio)
Propiedades Las propiedades de la plantilla de imagen ImageTemplateProperties

ImageTemplateIdentity

Nombre Descripción Valor
tipo Tipo de identidad que se usa para la plantilla de imagen. El tipo "None" quitará las identidades de la plantilla de imagen. 'Ninguno'
'UserAssigned'
userAssignedIdentities Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves de diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes. UserAssignedIdentities

UserAssignedIdentities

Nombre Descripción Valor
{propiedad personalizada} UserAssignedIdentity

UserAssignedIdentity

Este objeto no contiene ninguna propiedad que se establezca durante la implementación. Todas las propiedades son ReadOnly.

ImageTemplateProperties

Nombre Descripción Valor
autoRun Indica si se va a ejecutar o no automáticamente la compilación de la plantilla de imagen en la creación o actualización de la plantilla. ImageTemplateAutoRun
buildTimeoutInMinutes Duración máxima para esperar al compilar la plantilla de imagen (incluye todas las personalizaciones, optimización, validaciones y distribuciones). Omita o especifique 0 para usar el valor predeterminado (4 horas). Int

Restricciones:
Valor mínimo = 0
Valor máximo = 960
Personalizar Especifica las propiedades usadas para describir los pasos de personalización de la imagen, como el origen de la imagen, etc. ImageTemplateCustomizer []
distribuir Los destinos de distribución a los que debe ir la salida de la imagen. ImageTemplateDistributor[] (obligatorio)
errorHandling Opciones de control de errores tras un error de compilación ImageTemplatePropertiesErrorHandling
managedResourceTags Etiquetas que se aplicarán al grupo de recursos o a los recursos creados por el servicio. objeto
optimizar Especifica la optimización que se va a realizar en la imagen. ImageTemplatePropertiesOptimize
fuente Especifica las propiedades usadas para describir la imagen de origen. ImageTemplateSource (obligatorio)
stagingResourceGroup Identificador del grupo de recursos de almacenamiento provisional en la misma suscripción que la plantilla de imagen que se usará para compilar la imagen. Si este campo está vacío, se creará un grupo de recursos con un nombre aleatorio. Si el grupo de recursos especificado en este campo no existe, se creará con el mismo nombre. Si el grupo de recursos especificado existe, debe estar vacío y en la misma región que la plantilla de imagen. El grupo de recursos creado se eliminará durante la eliminación de la plantilla si este campo está vacío o el grupo de recursos especificado no existe, pero si el grupo de recursos especificado existe los recursos creados en el grupo de recursos se eliminarán durante la eliminación de la plantilla y el propio grupo de recursos permanecerá. cuerda
validar Opciones de configuración y lista de validaciones que se van a realizar en la imagen resultante. ImageTemplatePropertiesValidate
vmProfile Describe cómo se configura la máquina virtual para compilar imágenes ImageTemplateVmProfile

ImageTemplateAutoRun

Nombre Descripción Valor
estado Al habilitar este campo, se desencadenará una compilación automática en la creación o actualización de plantillas de imagen. 'Deshabilitado'
'Habilitado'

ImageTemplateCustomizer

Nombre Descripción Valor
nombre Nombre descriptivo para proporcionar contexto sobre lo que hace este paso de personalización cuerda
tipo Establecimiento del tipo de objeto archivo de
powerShell
de shell de
WindowsRestart
WindowsUpdate (obligatorio)

ImageTemplateFileCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'File' (obligatorio)
destino Ruta de acceso absoluta a un archivo (con estructuras de directorio anidadas ya creadas) donde el archivo (desde sourceUri) se cargará en en la máquina virtual. cuerda
sha256Checksum Suma de comprobación SHA256 del archivo proporcionado en el campo sourceUri anterior cuerda
sourceUri Identificador URI del archivo que se va a cargar para personalizar la máquina virtual. Puede ser un vínculo de GitHub, un URI de SAS para Azure Storage, etc. cuerda

ImageTemplatePowerShellCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'PowerShell' (obligatorio)
Inline Matriz de comandos de PowerShell que se van a ejecutar string[]
runAsSystem Si se especifica, el script de PowerShell se ejecutará con privilegios elevados mediante el usuario del sistema local. Solo puede ser true cuando el campo runElevated anterior está establecido en true. Bool
runElevated Si se especifica, el script de PowerShell se ejecutará con privilegios elevados. Bool
scriptUri URI del script de PowerShell que se va a ejecutar para personalizar. Puede ser un vínculo de GitHub, un URI de SAS para Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de Power Shell proporcionado en el campo scriptUri anterior cuerda
validExitCodes Códigos de salida válidos para el script de PowerShell. [Valor predeterminado: 0] int[]

ImageTemplateShellCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'Shell' (obligatorio)
Inline Matriz de comandos de shell que se van a ejecutar string[]
scriptUri URI del script de shell que se va a ejecutar para personalizar. Puede ser un vínculo de GitHub, un URI de SAS para Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de shell proporcionado en el campo scriptUri cuerda

ImageTemplateRestartCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'WindowsRestart' (obligatorio)
restartCheckCommand Comando para comprobar si el reinicio se realizó correctamente [Valor predeterminado: ''] cuerda
restartCommand Comando para ejecutar el reinicio [Valor predeterminado: 'shutdown /r /f /t 0 /c "packer restart"'] cuerda
restartTimeout Tiempo de espera de reinicio especificado como una cadena de magnitud y unidad, por ejemplo, '5m' (5 minutos) o '2h' (2 horas) [Valor predeterminado: '5m'] cuerda

ImageTemplateWindowsUpdateCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'WindowsUpdate' (obligatorio)
filtros Matriz de filtros para seleccionar las actualizaciones que se van a aplicar. Omita o especifique una matriz vacía para usar el valor predeterminado (sin filtro). Consulte el vínculo anterior para obtener ejemplos y una descripción detallada de este campo. string[]
searchCriteria Criterios para buscar actualizaciones. Omita o especifique una cadena vacía para usar el valor predeterminado (buscar todo). Consulte el vínculo anterior para obtener ejemplos y una descripción detallada de este campo. cuerda
updateLimit Número máximo de actualizaciones que se aplicarán a la vez. Omitir o especificar 0 para usar el valor predeterminado (1000) Int

Restricciones:
Valor mínimo = 0

ImageTemplateDistributor

Nombre Descripción Valor
artifactTags Etiquetas que se aplicarán al artefacto una vez que el distribuidor haya creado o actualizado. objeto
runOutputName Nombre que se va a usar para el RunOutput asociado. string (obligatorio)

Restricciones:
Patrón = ^[A-Za-z0-9-_.]{1,64}$
tipo Establecimiento del tipo de objeto ManagedImage
SharedImage
VHD (obligatorio)

ImageTemplateManagedImageDistributor

Nombre Descripción Valor
tipo Tipo de distribución. 'ManagedImage' (obligatorio)
imageId Identificador de recurso de la imagen de disco administrado string (obligatorio)
ubicación La ubicación de Azure de la imagen debe coincidir si la imagen ya existe string (obligatorio)

ImageTemplateSharedImageDistributor

Nombre Descripción Valor
tipo Tipo de distribución. 'SharedImage' (obligatorio)
excludeFromLatest Marca que indica si la versión de la imagen creada debe excluirse de la versión más reciente. Omitir para usar el valor predeterminado (false). Bool
galleryImageId Identificador de recurso de la imagen de Azure Compute Gallery string (obligatorio)
replicationRegions [En desuso] Lista de regiones en las que se replicará la imagen. Esta lista solo se puede especificar si no se especifica targetRegions. Este campo está en desuso: use targetRegions en su lugar. string[]
storageAccountType [En desuso] Tipo de cuenta de almacenamiento que se usará para almacenar la imagen compartida. Omita usar el valor predeterminado (Standard_LRS). Este campo solo se puede especificar si se especifica replicationRegions. Este campo está en desuso: use targetRegions en su lugar. "Premium_LRS"
"Standard_LRS"
"Standard_ZRS"
targetRegions Las regiones de destino en las que se va a replicar la versión de imagen distribuida. Este objeto reemplaza replicationRegions y solo se puede especificar si no se especifica replicationRegions. TargetRegion[]
control de versiones Describe cómo generar un nuevo número de versión x.y.z para la distribución. DistributeVersioner

TargetRegion

Nombre Descripción Valor
nombre Nombre de la región. string (obligatorio)
replicaCount Número de réplicas de la versión de imagen que se va a crear en esta región. Omitir para usar el valor predeterminado (1). Int

Restricciones:
Valor mínimo = 1
storageAccountType Especifica el tipo de cuenta de almacenamiento que se va a usar para almacenar la imagen en esta región. Omita usar el valor predeterminado (Standard_LRS). "Premium_LRS"
"Standard_LRS"
"Standard_ZRS"

DistributeVersioner

Nombre Descripción Valor
esquema Establecimiento del tipo de objeto más reciente
de origen (obligatorio)

DistributeVersionerLatest

Nombre Descripción Valor
esquema Esquema de numeración de versión que se va a usar. 'Latest' (obligatorio)
destacado Versión principal del número de versión generado. Determine qué es "latest" en función de las versiones con este valor como la versión principal. -1 es equivalente a dejar sin establecer. Int

DistributeVersionerSource

Nombre Descripción Valor
esquema Esquema de numeración de versión que se va a usar. 'Source' (obligatorio)

ImageTemplateVhdDistributor

Nombre Descripción Valor
tipo Tipo de distribución. 'VHD' (obligatorio)
Uri URI opcional de Azure Storage para el blob de disco duro virtual distribuido. Omita usar el valor predeterminado (cadena vacía) en cuyo caso el disco duro virtual se publicaría en la cuenta de almacenamiento del grupo de recursos de almacenamiento provisional. cuerda

ImageTemplatePropertiesErrorHandling

Nombre Descripción Valor
onCustomizerError Si hay un error del personalizador y este campo se establece en "limpieza", se limpiará la máquina virtual de compilación y los recursos de red asociados. Este es el comportamiento predeterminado. Si se produce un error del personalizador y este campo se establece en "abort", se conservará la máquina virtual de compilación. 'abort'
"limpieza"
onValidationError Si se produce un error de validación y este campo se establece en "limpieza", se limpiará la máquina virtual de compilación y los recursos de red asociados. Este es el comportamiento predeterminado. Si hay un error de validación y este campo se establece en "abort", se conservará la máquina virtual de compilación. 'abort'
"limpieza"

ImageTemplatePropertiesOptimize

Nombre Descripción Valor
vmBoot La optimización se aplica en la imagen para un arranque de máquina virtual más rápido. ImageTemplatePropertiesOptimizeVmBoot

ImageTemplatePropertiesOptimizeVmBoot

Nombre Descripción Valor
estado La habilitación de este campo mejorará el tiempo de arranque de la máquina virtual mediante la optimización de la salida final de la imagen personalizada. 'Deshabilitado'
'Habilitado'

ImageTemplateSource

Nombre Descripción Valor
tipo Establecimiento del tipo de objeto ManagedImage
PlatformImage
sharedImageVersion (obligatorio)

ImageTemplateManagedImageSource

Nombre Descripción Valor
tipo Especifica el tipo de imagen de origen con el que desea empezar. 'ManagedImage' (obligatorio)
imageId Identificador de recurso de ARM de la imagen administrada en la suscripción de cliente string (obligatorio)

ImageTemplatePlatformImageSource

Nombre Descripción Valor
tipo Especifica el tipo de imagen de origen con el que desea empezar. 'PlatformImage' (obligatorio)
ofrecer Oferta de imagen de la Imágenes de la Galería de Azure. cuerda
planInfo Configuración opcional del plan de compra para la imagen de plataforma. PlatformImagePurchasePlan
editor Image Publisher en Imágenes de la Galería de Azure. cuerda
Sku SKU de imagen de la Imágenes de la Galería de Azure. cuerda
Versión Versión de imagen de la Imágenes de La galería de Azure. Si se especifica 'latest' aquí, la versión se evalúa cuando tiene lugar la compilación de la imagen, no cuando se envía la plantilla. cuerda

PlatformImagePurchasePlan

Nombre Descripción Valor
planName Nombre del plan de compra. string (obligatorio)
planProduct Producto del plan de compra. string (obligatorio)
planPublisher Publicador del plan de compra. string (obligatorio)

ImageTemplateSharedImageVersionSource

Nombre Descripción Valor
tipo Especifica el tipo de imagen de origen con el que desea empezar. 'SharedImageVersion' (obligatorio)
imageVersionId Identificador de recurso de ARM de la versión de la imagen. Cuando el nombre de la versión de la imagen es "latest", la versión se evalúa cuando se realiza la compilación de la imagen. string (obligatorio)

ImageTemplatePropertiesValidate

Nombre Descripción Valor
continueDistributeOnFailure Si se produce un error en la validación y este campo se establece en false, las imágenes de salida no se distribuirán. Este es el comportamiento predeterminado. Si se produce un error en la validación y este campo se establece en true, las imágenes de salida se seguirán distribuyendo. Use esta opción con precaución, ya que puede dar lugar a que se distribuyan imágenes incorrectas para su uso. En cualquier caso (true o false), la ejecución de la imagen de un extremo a otro se notificará como con errores en caso de error de validación. [Nota: Este campo no tiene ningún efecto si la validación se realiza correctamente].] Bool
inVMValidations Lista de validaciones que se van a realizar. ImageTemplateInVMValidator []
sourceValidationOnly Si este campo se establece en true, la imagen especificada en la sección "source" se validará directamente. No se ejecutará ninguna compilación independiente para generar y, a continuación, validar una imagen personalizada. Bool

ImageTemplateInVMValidator

Nombre Descripción Valor
nombre Nombre descriptivo para proporcionar contexto sobre lo que hace este paso de validación cuerda
tipo Establecimiento del tipo de objeto archivo de
powerShell
shell (obligatorio)

ImageTemplateFileValidator

Nombre Descripción Valor
tipo Tipo de validación que desea usar en la imagen. Por ejemplo, "Shell" puede ser validación del shell. 'File' (obligatorio)
destino Ruta de acceso absoluta a un archivo (con estructuras de directorio anidadas ya creadas) donde el archivo (desde sourceUri) se cargará en en la máquina virtual. cuerda
sha256Checksum Suma de comprobación SHA256 del archivo proporcionado en el campo sourceUri anterior cuerda
sourceUri URI del archivo que se va a cargar en la máquina virtual para la validación. Puede ser un vínculo de GitHub, un URI de Azure Storage (autorizado o SAS), etc. cuerda

ImageTemplatePowerShellValidator

Nombre Descripción Valor
tipo Tipo de validación que desea usar en la imagen. Por ejemplo, "Shell" puede ser validación del shell. 'PowerShell' (obligatorio)
Inline Matriz de comandos de PowerShell que se van a ejecutar string[]
runAsSystem Si se especifica, el script de PowerShell se ejecutará con privilegios elevados mediante el usuario del sistema local. Solo puede ser true cuando el campo runElevated anterior está establecido en true. Bool
runElevated Si se especifica, el script de PowerShell se ejecutará con privilegios elevados. Bool
scriptUri URI del script de PowerShell que se va a ejecutar para la validación. Puede ser un vínculo de GitHub, un URI de Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de Power Shell proporcionado en el campo scriptUri anterior cuerda
validExitCodes Códigos de salida válidos para el script de PowerShell. [Valor predeterminado: 0] int[]

ImageTemplateShellValidator

Nombre Descripción Valor
tipo Tipo de validación que desea usar en la imagen. Por ejemplo, "Shell" puede ser validación del shell. 'Shell' (obligatorio)
Inline Matriz de comandos de shell que se van a ejecutar string[]
scriptUri URI del script de shell que se va a ejecutar para la validación. Puede ser un vínculo de GitHub, un URI de Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de shell proporcionado en el campo scriptUri cuerda

ImageTemplateVmProfile

Nombre Descripción Valor
osDiskSizeGB Tamaño del disco del sistema operativo en GB. Omita o especifique 0 para usar el tamaño de disco del sistema operativo predeterminado de Azure. Int

Restricciones:
Valor mínimo = 0
userAssignedIdentities Matriz opcional de identificadores de recursos de identidades administradas asignadas por el usuario que se van a configurar en la máquina virtual de compilación y la máquina virtual de validación. Esto puede incluir la identidad de la plantilla de imagen. string[]
vmSize Tamaño de la máquina virtual que se usa para compilar, personalizar y capturar imágenes. Omita o especifique una cadena vacía para usar el valor predeterminado (Standard_D1_v2 para imágenes gen1 y Standard_D2ds_v4 para imágenes de Gen2). cuerda
vnetConfig Configuración opcional de la red virtual que se va a usar para implementar la máquina virtual de compilación y la máquina virtual de validación en. Omita si no es necesario usar ninguna red virtual específica. virtualNetworkConfig

VirtualNetworkConfig

Nombre Descripción Valor
containerInstanceSubnetId Identificador de recurso de una subred preexistente en la que se implementará Azure Container Instance para compilaciones aisladas. Este campo solo se puede especificar si también se especifica subnetId y debe estar en la misma red virtual que la subred especificada en subnetId. cuerda
proxyVmSize Tamaño de la máquina virtual proxy que se usa para pasar tráfico a la máquina virtual de compilación y a la máquina virtual de validación. No se debe especificar si se especifica containerInstanceSubnetId porque no se implementa ninguna máquina virtual proxy en ese caso. Omita o especifique una cadena vacía para usar el valor predeterminado (Standard_A1_v2). cuerda
subnetId Identificador de recurso de una subred preexistente en la que se implementará la máquina virtual de compilación y la máquina virtual de validación. cuerda

Plantillas de inicio rápido

Las siguientes plantillas de inicio rápido implementan este tipo de recurso.

Plantilla Descripción
Azure Image Builder con azure Windows Baseline

Implementación en Azure
Crea un entorno de Azure Image Builder y crea una imagen de Windows Server con las actualizaciones más recientes de Windows y la línea de base de Windows de Azure aplicadas.
configuración del servicio Dev Box

Implementación en Azure
Esta plantilla crearía todos los recursos de administración de Dev Box según la guía de inicio rápido de Dev Box (https://learn.microsoft.com/azure/dev-box/quickstart-create-dev-box). Puede ver todos los recursos creados o ir directamente a DevPortal.microsoft.com para crear su primer cuadro de desarrollo.

Definición de recursos de plantilla de ARM

El tipo de recurso imageTemplates se puede implementar con operaciones que tienen como destino:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.VirtualMachineImages/imageTemplates, agregue el siguiente JSON a la plantilla.

{
  "type": "Microsoft.VirtualMachineImages/imageTemplates",
  "apiVersion": "2024-02-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {}
    }
  },
  "properties": {
    "autoRun": {
      "state": "string"
    },
    "buildTimeoutInMinutes": "int",
    "customize": [
      {
        "name": "string",
        "type": "string"
        // For remaining properties, see ImageTemplateCustomizer objects
      }
    ],
    "distribute": [
      {
        "artifactTags": {},
        "runOutputName": "string",
        "type": "string"
        // For remaining properties, see ImageTemplateDistributor objects
      }
    ],
    "errorHandling": {
      "onCustomizerError": "string",
      "onValidationError": "string"
    },
    "managedResourceTags": {},
    "optimize": {
      "vmBoot": {
        "state": "string"
      }
    },
    "source": {
      "type": "string"
      // For remaining properties, see ImageTemplateSource objects
    },
    "stagingResourceGroup": "string",
    "validate": {
      "continueDistributeOnFailure": "bool",
      "inVMValidations": [
        {
          "name": "string",
          "type": "string"
          // For remaining properties, see ImageTemplateInVMValidator objects
        }
      ],
      "sourceValidationOnly": "bool"
    },
    "vmProfile": {
      "osDiskSizeGB": "int",
      "userAssignedIdentities": [ "string" ],
      "vmSize": "string",
      "vnetConfig": {
        "containerInstanceSubnetId": "string",
        "proxyVmSize": "string",
        "subnetId": "string"
      }
    }
  }
}

Objetos ImageTemplateCustomizer

Establezca el tipo propiedad para especificar el tipo de objeto.

Para archivo, use:

  "type": "File",
  "destination": "string",
  "sha256Checksum": "string",
  "sourceUri": "string"

Para powerShell, use:

  "type": "PowerShell",
  "inline": [ "string" ],
  "runAsSystem": "bool",
  "runElevated": "bool",
  "scriptUri": "string",
  "sha256Checksum": "string",
  "validExitCodes": [ "int" ]

Para shell, use:

  "type": "Shell",
  "inline": [ "string" ],
  "scriptUri": "string",
  "sha256Checksum": "string"

Para WindowsRestart, use:

  "type": "WindowsRestart",
  "restartCheckCommand": "string",
  "restartCommand": "string",
  "restartTimeout": "string"

Para WindowsUpdate, use:

  "type": "WindowsUpdate",
  "filters": [ "string" ],
  "searchCriteria": "string",
  "updateLimit": "int"

Objetos ImageTemplateDistributor

Establezca el tipo propiedad para especificar el tipo de objeto.

Para ManagedImage, use:

  "type": "ManagedImage",
  "imageId": "string",
  "location": "string"

Para SharedImage, use:

  "type": "SharedImage",
  "excludeFromLatest": "bool",
  "galleryImageId": "string",
  "replicationRegions": [ "string" ],
  "storageAccountType": "string",
  "targetRegions": [
    {
      "name": "string",
      "replicaCount": "int",
      "storageAccountType": "string"
    }
  ],
  "versioning": {
    "scheme": "string"
    // For remaining properties, see DistributeVersioner objects
  }

Para VHD, use:

  "type": "VHD",
  "uri": "string"

Objetos DistributeVersioner

Establezca el esquema propiedad para especificar el tipo de objeto.

Para Latest, use:

  "scheme": "Latest",
  "major": "int"

Para source, use:

  "scheme": "Source"

Objetos ImageTemplateSource

Establezca el tipo propiedad para especificar el tipo de objeto.

Para ManagedImage, use:

  "type": "ManagedImage",
  "imageId": "string"

Para PlatformImage, use:

  "type": "PlatformImage",
  "offer": "string",
  "planInfo": {
    "planName": "string",
    "planProduct": "string",
    "planPublisher": "string"
  },
  "publisher": "string",
  "sku": "string",
  "version": "string"

Para SharedImageVersion, use:

  "type": "SharedImageVersion",
  "imageVersionId": "string"

Objetos ImageTemplateInVMValidator

Establezca el tipo propiedad para especificar el tipo de objeto.

Para archivo, use:

  "type": "File",
  "destination": "string",
  "sha256Checksum": "string",
  "sourceUri": "string"

Para powerShell, use:

  "type": "PowerShell",
  "inline": [ "string" ],
  "runAsSystem": "bool",
  "runElevated": "bool",
  "scriptUri": "string",
  "sha256Checksum": "string",
  "validExitCodes": [ "int" ]

Para shell, use:

  "type": "Shell",
  "inline": [ "string" ],
  "scriptUri": "string",
  "sha256Checksum": "string"

Valores de propiedad

imageTemplates

Nombre Descripción Valor
tipo El tipo de recurso 'Microsoft.VirtualMachineImages/imageTemplates'
apiVersion La versión de la API de recursos '2024-02-01'
nombre El nombre del recurso string (obligatorio)
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
Etiquetas Etiquetas de recursos. Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas
identidad Identidad de la plantilla de imagen, si está configurada. ImageTemplateIdentity (obligatorio)
Propiedades Las propiedades de la plantilla de imagen ImageTemplateProperties

ImageTemplateIdentity

Nombre Descripción Valor
tipo Tipo de identidad que se usa para la plantilla de imagen. El tipo "None" quitará las identidades de la plantilla de imagen. 'Ninguno'
'UserAssigned'
userAssignedIdentities Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves de diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes. UserAssignedIdentities

UserAssignedIdentities

Nombre Descripción Valor
{propiedad personalizada} UserAssignedIdentity

UserAssignedIdentity

Este objeto no contiene ninguna propiedad que se establezca durante la implementación. Todas las propiedades son ReadOnly.

ImageTemplateProperties

Nombre Descripción Valor
autoRun Indica si se va a ejecutar o no automáticamente la compilación de la plantilla de imagen en la creación o actualización de la plantilla. ImageTemplateAutoRun
buildTimeoutInMinutes Duración máxima para esperar al compilar la plantilla de imagen (incluye todas las personalizaciones, optimización, validaciones y distribuciones). Omita o especifique 0 para usar el valor predeterminado (4 horas). Int

Restricciones:
Valor mínimo = 0
Valor máximo = 960
Personalizar Especifica las propiedades usadas para describir los pasos de personalización de la imagen, como el origen de la imagen, etc. ImageTemplateCustomizer []
distribuir Los destinos de distribución a los que debe ir la salida de la imagen. ImageTemplateDistributor[] (obligatorio)
errorHandling Opciones de control de errores tras un error de compilación ImageTemplatePropertiesErrorHandling
managedResourceTags Etiquetas que se aplicarán al grupo de recursos o a los recursos creados por el servicio. objeto
optimizar Especifica la optimización que se va a realizar en la imagen. ImageTemplatePropertiesOptimize
fuente Especifica las propiedades usadas para describir la imagen de origen. ImageTemplateSource (obligatorio)
stagingResourceGroup Identificador del grupo de recursos de almacenamiento provisional en la misma suscripción que la plantilla de imagen que se usará para compilar la imagen. Si este campo está vacío, se creará un grupo de recursos con un nombre aleatorio. Si el grupo de recursos especificado en este campo no existe, se creará con el mismo nombre. Si el grupo de recursos especificado existe, debe estar vacío y en la misma región que la plantilla de imagen. El grupo de recursos creado se eliminará durante la eliminación de la plantilla si este campo está vacío o el grupo de recursos especificado no existe, pero si el grupo de recursos especificado existe los recursos creados en el grupo de recursos se eliminarán durante la eliminación de la plantilla y el propio grupo de recursos permanecerá. cuerda
validar Opciones de configuración y lista de validaciones que se van a realizar en la imagen resultante. ImageTemplatePropertiesValidate
vmProfile Describe cómo se configura la máquina virtual para compilar imágenes ImageTemplateVmProfile

ImageTemplateAutoRun

Nombre Descripción Valor
estado Al habilitar este campo, se desencadenará una compilación automática en la creación o actualización de plantillas de imagen. 'Deshabilitado'
'Habilitado'

ImageTemplateCustomizer

Nombre Descripción Valor
nombre Nombre descriptivo para proporcionar contexto sobre lo que hace este paso de personalización cuerda
tipo Establecimiento del tipo de objeto archivo de
powerShell
de shell de
WindowsRestart
WindowsUpdate (obligatorio)

ImageTemplateFileCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'File' (obligatorio)
destino Ruta de acceso absoluta a un archivo (con estructuras de directorio anidadas ya creadas) donde el archivo (desde sourceUri) se cargará en en la máquina virtual. cuerda
sha256Checksum Suma de comprobación SHA256 del archivo proporcionado en el campo sourceUri anterior cuerda
sourceUri Identificador URI del archivo que se va a cargar para personalizar la máquina virtual. Puede ser un vínculo de GitHub, un URI de SAS para Azure Storage, etc. cuerda

ImageTemplatePowerShellCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'PowerShell' (obligatorio)
Inline Matriz de comandos de PowerShell que se van a ejecutar string[]
runAsSystem Si se especifica, el script de PowerShell se ejecutará con privilegios elevados mediante el usuario del sistema local. Solo puede ser true cuando el campo runElevated anterior está establecido en true. Bool
runElevated Si se especifica, el script de PowerShell se ejecutará con privilegios elevados. Bool
scriptUri URI del script de PowerShell que se va a ejecutar para personalizar. Puede ser un vínculo de GitHub, un URI de SAS para Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de Power Shell proporcionado en el campo scriptUri anterior cuerda
validExitCodes Códigos de salida válidos para el script de PowerShell. [Valor predeterminado: 0] int[]

ImageTemplateShellCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'Shell' (obligatorio)
Inline Matriz de comandos de shell que se van a ejecutar string[]
scriptUri URI del script de shell que se va a ejecutar para personalizar. Puede ser un vínculo de GitHub, un URI de SAS para Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de shell proporcionado en el campo scriptUri cuerda

ImageTemplateRestartCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'WindowsRestart' (obligatorio)
restartCheckCommand Comando para comprobar si el reinicio se realizó correctamente [Valor predeterminado: ''] cuerda
restartCommand Comando para ejecutar el reinicio [Valor predeterminado: 'shutdown /r /f /t 0 /c "packer restart"'] cuerda
restartTimeout Tiempo de espera de reinicio especificado como una cadena de magnitud y unidad, por ejemplo, '5m' (5 minutos) o '2h' (2 horas) [Valor predeterminado: '5m'] cuerda

ImageTemplateWindowsUpdateCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. 'WindowsUpdate' (obligatorio)
filtros Matriz de filtros para seleccionar las actualizaciones que se van a aplicar. Omita o especifique una matriz vacía para usar el valor predeterminado (sin filtro). Consulte el vínculo anterior para obtener ejemplos y una descripción detallada de este campo. string[]
searchCriteria Criterios para buscar actualizaciones. Omita o especifique una cadena vacía para usar el valor predeterminado (buscar todo). Consulte el vínculo anterior para obtener ejemplos y una descripción detallada de este campo. cuerda
updateLimit Número máximo de actualizaciones que se aplicarán a la vez. Omitir o especificar 0 para usar el valor predeterminado (1000) Int

Restricciones:
Valor mínimo = 0

ImageTemplateDistributor

Nombre Descripción Valor
artifactTags Etiquetas que se aplicarán al artefacto una vez que el distribuidor haya creado o actualizado. objeto
runOutputName Nombre que se va a usar para el RunOutput asociado. string (obligatorio)

Restricciones:
Patrón = ^[A-Za-z0-9-_.]{1,64}$
tipo Establecimiento del tipo de objeto ManagedImage
SharedImage
VHD (obligatorio)

ImageTemplateManagedImageDistributor

Nombre Descripción Valor
tipo Tipo de distribución. 'ManagedImage' (obligatorio)
imageId Identificador de recurso de la imagen de disco administrado string (obligatorio)
ubicación La ubicación de Azure de la imagen debe coincidir si la imagen ya existe string (obligatorio)

ImageTemplateSharedImageDistributor

Nombre Descripción Valor
tipo Tipo de distribución. 'SharedImage' (obligatorio)
excludeFromLatest Marca que indica si la versión de la imagen creada debe excluirse de la versión más reciente. Omitir para usar el valor predeterminado (false). Bool
galleryImageId Identificador de recurso de la imagen de Azure Compute Gallery string (obligatorio)
replicationRegions [En desuso] Lista de regiones en las que se replicará la imagen. Esta lista solo se puede especificar si no se especifica targetRegions. Este campo está en desuso: use targetRegions en su lugar. string[]
storageAccountType [En desuso] Tipo de cuenta de almacenamiento que se usará para almacenar la imagen compartida. Omita usar el valor predeterminado (Standard_LRS). Este campo solo se puede especificar si se especifica replicationRegions. Este campo está en desuso: use targetRegions en su lugar. "Premium_LRS"
"Standard_LRS"
"Standard_ZRS"
targetRegions Las regiones de destino en las que se va a replicar la versión de imagen distribuida. Este objeto reemplaza replicationRegions y solo se puede especificar si no se especifica replicationRegions. TargetRegion[]
control de versiones Describe cómo generar un nuevo número de versión x.y.z para la distribución. DistributeVersioner

TargetRegion

Nombre Descripción Valor
nombre Nombre de la región. string (obligatorio)
replicaCount Número de réplicas de la versión de imagen que se va a crear en esta región. Omitir para usar el valor predeterminado (1). Int

Restricciones:
Valor mínimo = 1
storageAccountType Especifica el tipo de cuenta de almacenamiento que se va a usar para almacenar la imagen en esta región. Omita usar el valor predeterminado (Standard_LRS). "Premium_LRS"
"Standard_LRS"
"Standard_ZRS"

DistributeVersioner

Nombre Descripción Valor
esquema Establecimiento del tipo de objeto más reciente
de origen (obligatorio)

DistributeVersionerLatest

Nombre Descripción Valor
esquema Esquema de numeración de versión que se va a usar. 'Latest' (obligatorio)
destacado Versión principal del número de versión generado. Determine qué es "latest" en función de las versiones con este valor como la versión principal. -1 es equivalente a dejar sin establecer. Int

DistributeVersionerSource

Nombre Descripción Valor
esquema Esquema de numeración de versión que se va a usar. 'Source' (obligatorio)

ImageTemplateVhdDistributor

Nombre Descripción Valor
tipo Tipo de distribución. 'VHD' (obligatorio)
Uri URI opcional de Azure Storage para el blob de disco duro virtual distribuido. Omita usar el valor predeterminado (cadena vacía) en cuyo caso el disco duro virtual se publicaría en la cuenta de almacenamiento del grupo de recursos de almacenamiento provisional. cuerda

ImageTemplatePropertiesErrorHandling

Nombre Descripción Valor
onCustomizerError Si hay un error del personalizador y este campo se establece en "limpieza", se limpiará la máquina virtual de compilación y los recursos de red asociados. Este es el comportamiento predeterminado. Si se produce un error del personalizador y este campo se establece en "abort", se conservará la máquina virtual de compilación. 'abort'
"limpieza"
onValidationError Si se produce un error de validación y este campo se establece en "limpieza", se limpiará la máquina virtual de compilación y los recursos de red asociados. Este es el comportamiento predeterminado. Si hay un error de validación y este campo se establece en "abort", se conservará la máquina virtual de compilación. 'abort'
"limpieza"

ImageTemplatePropertiesOptimize

Nombre Descripción Valor
vmBoot La optimización se aplica en la imagen para un arranque de máquina virtual más rápido. ImageTemplatePropertiesOptimizeVmBoot

ImageTemplatePropertiesOptimizeVmBoot

Nombre Descripción Valor
estado La habilitación de este campo mejorará el tiempo de arranque de la máquina virtual mediante la optimización de la salida final de la imagen personalizada. 'Deshabilitado'
'Habilitado'

ImageTemplateSource

Nombre Descripción Valor
tipo Establecimiento del tipo de objeto ManagedImage
PlatformImage
sharedImageVersion (obligatorio)

ImageTemplateManagedImageSource

Nombre Descripción Valor
tipo Especifica el tipo de imagen de origen con el que desea empezar. 'ManagedImage' (obligatorio)
imageId Identificador de recurso de ARM de la imagen administrada en la suscripción de cliente string (obligatorio)

ImageTemplatePlatformImageSource

Nombre Descripción Valor
tipo Especifica el tipo de imagen de origen con el que desea empezar. 'PlatformImage' (obligatorio)
ofrecer Oferta de imagen de la Imágenes de la Galería de Azure. cuerda
planInfo Configuración opcional del plan de compra para la imagen de plataforma. PlatformImagePurchasePlan
editor Image Publisher en Imágenes de la Galería de Azure. cuerda
Sku SKU de imagen de la Imágenes de la Galería de Azure. cuerda
Versión Versión de imagen de la Imágenes de La galería de Azure. Si se especifica 'latest' aquí, la versión se evalúa cuando tiene lugar la compilación de la imagen, no cuando se envía la plantilla. cuerda

PlatformImagePurchasePlan

Nombre Descripción Valor
planName Nombre del plan de compra. string (obligatorio)
planProduct Producto del plan de compra. string (obligatorio)
planPublisher Publicador del plan de compra. string (obligatorio)

ImageTemplateSharedImageVersionSource

Nombre Descripción Valor
tipo Especifica el tipo de imagen de origen con el que desea empezar. 'SharedImageVersion' (obligatorio)
imageVersionId Identificador de recurso de ARM de la versión de la imagen. Cuando el nombre de la versión de la imagen es "latest", la versión se evalúa cuando se realiza la compilación de la imagen. string (obligatorio)

ImageTemplatePropertiesValidate

Nombre Descripción Valor
continueDistributeOnFailure Si se produce un error en la validación y este campo se establece en false, las imágenes de salida no se distribuirán. Este es el comportamiento predeterminado. Si se produce un error en la validación y este campo se establece en true, las imágenes de salida se seguirán distribuyendo. Use esta opción con precaución, ya que puede dar lugar a que se distribuyan imágenes incorrectas para su uso. En cualquier caso (true o false), la ejecución de la imagen de un extremo a otro se notificará como con errores en caso de error de validación. [Nota: Este campo no tiene ningún efecto si la validación se realiza correctamente].] Bool
inVMValidations Lista de validaciones que se van a realizar. ImageTemplateInVMValidator []
sourceValidationOnly Si este campo se establece en true, la imagen especificada en la sección "source" se validará directamente. No se ejecutará ninguna compilación independiente para generar y, a continuación, validar una imagen personalizada. Bool

ImageTemplateInVMValidator

Nombre Descripción Valor
nombre Nombre descriptivo para proporcionar contexto sobre lo que hace este paso de validación cuerda
tipo Establecimiento del tipo de objeto archivo de
powerShell
shell (obligatorio)

ImageTemplateFileValidator

Nombre Descripción Valor
tipo Tipo de validación que desea usar en la imagen. Por ejemplo, "Shell" puede ser validación del shell. 'File' (obligatorio)
destino Ruta de acceso absoluta a un archivo (con estructuras de directorio anidadas ya creadas) donde el archivo (desde sourceUri) se cargará en en la máquina virtual. cuerda
sha256Checksum Suma de comprobación SHA256 del archivo proporcionado en el campo sourceUri anterior cuerda
sourceUri URI del archivo que se va a cargar en la máquina virtual para la validación. Puede ser un vínculo de GitHub, un URI de Azure Storage (autorizado o SAS), etc. cuerda

ImageTemplatePowerShellValidator

Nombre Descripción Valor
tipo Tipo de validación que desea usar en la imagen. Por ejemplo, "Shell" puede ser validación del shell. 'PowerShell' (obligatorio)
Inline Matriz de comandos de PowerShell que se van a ejecutar string[]
runAsSystem Si se especifica, el script de PowerShell se ejecutará con privilegios elevados mediante el usuario del sistema local. Solo puede ser true cuando el campo runElevated anterior está establecido en true. Bool
runElevated Si se especifica, el script de PowerShell se ejecutará con privilegios elevados. Bool
scriptUri URI del script de PowerShell que se va a ejecutar para la validación. Puede ser un vínculo de GitHub, un URI de Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de Power Shell proporcionado en el campo scriptUri anterior cuerda
validExitCodes Códigos de salida válidos para el script de PowerShell. [Valor predeterminado: 0] int[]

ImageTemplateShellValidator

Nombre Descripción Valor
tipo Tipo de validación que desea usar en la imagen. Por ejemplo, "Shell" puede ser validación del shell. 'Shell' (obligatorio)
Inline Matriz de comandos de shell que se van a ejecutar string[]
scriptUri URI del script de shell que se va a ejecutar para la validación. Puede ser un vínculo de GitHub, un URI de Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de shell proporcionado en el campo scriptUri cuerda

ImageTemplateVmProfile

Nombre Descripción Valor
osDiskSizeGB Tamaño del disco del sistema operativo en GB. Omita o especifique 0 para usar el tamaño de disco del sistema operativo predeterminado de Azure. Int

Restricciones:
Valor mínimo = 0
userAssignedIdentities Matriz opcional de identificadores de recursos de identidades administradas asignadas por el usuario que se van a configurar en la máquina virtual de compilación y la máquina virtual de validación. Esto puede incluir la identidad de la plantilla de imagen. string[]
vmSize Tamaño de la máquina virtual que se usa para compilar, personalizar y capturar imágenes. Omita o especifique una cadena vacía para usar el valor predeterminado (Standard_D1_v2 para imágenes gen1 y Standard_D2ds_v4 para imágenes de Gen2). cuerda
vnetConfig Configuración opcional de la red virtual que se va a usar para implementar la máquina virtual de compilación y la máquina virtual de validación en. Omita si no es necesario usar ninguna red virtual específica. virtualNetworkConfig

VirtualNetworkConfig

Nombre Descripción Valor
containerInstanceSubnetId Identificador de recurso de una subred preexistente en la que se implementará Azure Container Instance para compilaciones aisladas. Este campo solo se puede especificar si también se especifica subnetId y debe estar en la misma red virtual que la subred especificada en subnetId. cuerda
proxyVmSize Tamaño de la máquina virtual proxy que se usa para pasar tráfico a la máquina virtual de compilación y a la máquina virtual de validación. No se debe especificar si se especifica containerInstanceSubnetId porque no se implementa ninguna máquina virtual proxy en ese caso. Omita o especifique una cadena vacía para usar el valor predeterminado (Standard_A1_v2). cuerda
subnetId Identificador de recurso de una subred preexistente en la que se implementará la máquina virtual de compilación y la máquina virtual de validación. cuerda

Plantillas de inicio rápido

Las siguientes plantillas de inicio rápido implementan este tipo de recurso.

Plantilla Descripción
Azure Image Builder con azure Windows Baseline

Implementación en Azure
Crea un entorno de Azure Image Builder y crea una imagen de Windows Server con las actualizaciones más recientes de Windows y la línea de base de Windows de Azure aplicadas.
configuración del servicio Dev Box

Implementación en Azure
Esta plantilla crearía todos los recursos de administración de Dev Box según la guía de inicio rápido de Dev Box (https://learn.microsoft.com/azure/dev-box/quickstart-create-dev-box). Puede ver todos los recursos creados o ir directamente a DevPortal.microsoft.com para crear su primer cuadro de desarrollo.

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso imageTemplates se puede implementar con operaciones que tienen como destino:

  • grupos de recursos de

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.VirtualMachineImages/imageTemplates, agregue el siguiente Terraform a la plantilla.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.VirtualMachineImages/imageTemplates@2024-02-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type =  "UserAssigned"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      autoRun = {
        state = "string"
      }
      buildTimeoutInMinutes = int
      customize = [
        {
          name = "string"
          type = "string"
          // For remaining properties, see ImageTemplateCustomizer objects
        }
      ]
      distribute = [
        {
          artifactTags = {}
          runOutputName = "string"
          type = "string"
          // For remaining properties, see ImageTemplateDistributor objects
        }
      ]
      errorHandling = {
        onCustomizerError = "string"
        onValidationError = "string"
      }
      managedResourceTags = {}
      optimize = {
        vmBoot = {
          state = "string"
        }
      }
      source = {
        type = "string"
        // For remaining properties, see ImageTemplateSource objects
      }
      stagingResourceGroup = "string"
      validate = {
        continueDistributeOnFailure = bool
        inVMValidations = [
          {
            name = "string"
            type = "string"
            // For remaining properties, see ImageTemplateInVMValidator objects
          }
        ]
        sourceValidationOnly = bool
      }
      vmProfile = {
        osDiskSizeGB = int
        userAssignedIdentities = [
          "string"
        ]
        vmSize = "string"
        vnetConfig = {
          containerInstanceSubnetId = "string"
          proxyVmSize = "string"
          subnetId = "string"
        }
      }
    }
  })
}

Objetos ImageTemplateCustomizer

Establezca el tipo propiedad para especificar el tipo de objeto.

Para archivo, use:

  type = "File"
  destination = "string"
  sha256Checksum = "string"
  sourceUri = "string"

Para powerShell, use:

  type = "PowerShell"
  inline = [
    "string"
  ]
  runAsSystem = bool
  runElevated = bool
  scriptUri = "string"
  sha256Checksum = "string"
  validExitCodes = [
    int
  ]

Para shell, use:

  type = "Shell"
  inline = [
    "string"
  ]
  scriptUri = "string"
  sha256Checksum = "string"

Para WindowsRestart, use:

  type = "WindowsRestart"
  restartCheckCommand = "string"
  restartCommand = "string"
  restartTimeout = "string"

Para WindowsUpdate, use:

  type = "WindowsUpdate"
  filters = [
    "string"
  ]
  searchCriteria = "string"
  updateLimit = int

Objetos ImageTemplateDistributor

Establezca el tipo propiedad para especificar el tipo de objeto.

Para ManagedImage, use:

  type = "ManagedImage"
  imageId = "string"
  location = "string"

Para SharedImage, use:

  type = "SharedImage"
  excludeFromLatest = bool
  galleryImageId = "string"
  replicationRegions = [
    "string"
  ]
  storageAccountType = "string"
  targetRegions = [
    {
      name = "string"
      replicaCount = int
      storageAccountType = "string"
    }
  ]
  versioning = {
    scheme = "string"
    // For remaining properties, see DistributeVersioner objects
  }

Para VHD, use:

  type = "VHD"
  uri = "string"

Objetos DistributeVersioner

Establezca el esquema propiedad para especificar el tipo de objeto.

Para Latest, use:

  scheme = "Latest"
  major = int

Para source, use:

  scheme = "Source"

Objetos ImageTemplateSource

Establezca el tipo propiedad para especificar el tipo de objeto.

Para ManagedImage, use:

  type = "ManagedImage"
  imageId = "string"

Para PlatformImage, use:

  type = "PlatformImage"
  offer = "string"
  planInfo = {
    planName = "string"
    planProduct = "string"
    planPublisher = "string"
  }
  publisher = "string"
  sku = "string"
  version = "string"

Para SharedImageVersion, use:

  type = "SharedImageVersion"
  imageVersionId = "string"

Objetos ImageTemplateInVMValidator

Establezca el tipo propiedad para especificar el tipo de objeto.

Para archivo, use:

  type = "File"
  destination = "string"
  sha256Checksum = "string"
  sourceUri = "string"

Para powerShell, use:

  type = "PowerShell"
  inline = [
    "string"
  ]
  runAsSystem = bool
  runElevated = bool
  scriptUri = "string"
  sha256Checksum = "string"
  validExitCodes = [
    int
  ]

Para shell, use:

  type = "Shell"
  inline = [
    "string"
  ]
  scriptUri = "string"
  sha256Checksum = "string"

Valores de propiedad

imageTemplates

Nombre Descripción Valor
tipo El tipo de recurso "Microsoft.VirtualMachineImages/imageTemplates@2024-02-01"
nombre El nombre del recurso string (obligatorio)
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
parent_id Para realizar la implementación en un grupo de recursos, use el identificador de ese grupo de recursos. string (obligatorio)
Etiquetas Etiquetas de recursos. Diccionario de nombres y valores de etiqueta.
identidad Identidad de la plantilla de imagen, si está configurada. ImageTemplateIdentity (obligatorio)
Propiedades Las propiedades de la plantilla de imagen ImageTemplateProperties

ImageTemplateIdentity

Nombre Descripción Valor
tipo Tipo de identidad que se usa para la plantilla de imagen. El tipo "None" quitará las identidades de la plantilla de imagen. "UserAssigned"
identity_ids Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves de diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes. Matriz de identificadores de identidad de usuario.

UserAssignedIdentities

Nombre Descripción Valor
{propiedad personalizada} UserAssignedIdentity

UserAssignedIdentity

Este objeto no contiene ninguna propiedad que se establezca durante la implementación. Todas las propiedades son ReadOnly.

ImageTemplateProperties

Nombre Descripción Valor
autoRun Indica si se va a ejecutar o no automáticamente la compilación de la plantilla de imagen en la creación o actualización de la plantilla. ImageTemplateAutoRun
buildTimeoutInMinutes Duración máxima para esperar al compilar la plantilla de imagen (incluye todas las personalizaciones, optimización, validaciones y distribuciones). Omita o especifique 0 para usar el valor predeterminado (4 horas). Int

Restricciones:
Valor mínimo = 0
Valor máximo = 960
Personalizar Especifica las propiedades usadas para describir los pasos de personalización de la imagen, como el origen de la imagen, etc. ImageTemplateCustomizer []
distribuir Los destinos de distribución a los que debe ir la salida de la imagen. ImageTemplateDistributor[] (obligatorio)
errorHandling Opciones de control de errores tras un error de compilación ImageTemplatePropertiesErrorHandling
managedResourceTags Etiquetas que se aplicarán al grupo de recursos o a los recursos creados por el servicio. objeto
optimizar Especifica la optimización que se va a realizar en la imagen. ImageTemplatePropertiesOptimize
fuente Especifica las propiedades usadas para describir la imagen de origen. ImageTemplateSource (obligatorio)
stagingResourceGroup Identificador del grupo de recursos de almacenamiento provisional en la misma suscripción que la plantilla de imagen que se usará para compilar la imagen. Si este campo está vacío, se creará un grupo de recursos con un nombre aleatorio. Si el grupo de recursos especificado en este campo no existe, se creará con el mismo nombre. Si el grupo de recursos especificado existe, debe estar vacío y en la misma región que la plantilla de imagen. El grupo de recursos creado se eliminará durante la eliminación de la plantilla si este campo está vacío o el grupo de recursos especificado no existe, pero si el grupo de recursos especificado existe los recursos creados en el grupo de recursos se eliminarán durante la eliminación de la plantilla y el propio grupo de recursos permanecerá. cuerda
validar Opciones de configuración y lista de validaciones que se van a realizar en la imagen resultante. ImageTemplatePropertiesValidate
vmProfile Describe cómo se configura la máquina virtual para compilar imágenes ImageTemplateVmProfile

ImageTemplateAutoRun

Nombre Descripción Valor
estado Al habilitar este campo, se desencadenará una compilación automática en la creación o actualización de plantillas de imagen. "Deshabilitado"
"Habilitado"

ImageTemplateCustomizer

Nombre Descripción Valor
nombre Nombre descriptivo para proporcionar contexto sobre lo que hace este paso de personalización cuerda
tipo Establecimiento del tipo de objeto archivo de
powerShell
de shell de
WindowsRestart
WindowsUpdate (obligatorio)

ImageTemplateFileCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. "Archivo" (obligatorio)
destino Ruta de acceso absoluta a un archivo (con estructuras de directorio anidadas ya creadas) donde el archivo (desde sourceUri) se cargará en en la máquina virtual. cuerda
sha256Checksum Suma de comprobación SHA256 del archivo proporcionado en el campo sourceUri anterior cuerda
sourceUri Identificador URI del archivo que se va a cargar para personalizar la máquina virtual. Puede ser un vínculo de GitHub, un URI de SAS para Azure Storage, etc. cuerda

ImageTemplatePowerShellCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. "PowerShell" (obligatorio)
Inline Matriz de comandos de PowerShell que se van a ejecutar string[]
runAsSystem Si se especifica, el script de PowerShell se ejecutará con privilegios elevados mediante el usuario del sistema local. Solo puede ser true cuando el campo runElevated anterior está establecido en true. Bool
runElevated Si se especifica, el script de PowerShell se ejecutará con privilegios elevados. Bool
scriptUri URI del script de PowerShell que se va a ejecutar para personalizar. Puede ser un vínculo de GitHub, un URI de SAS para Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de Power Shell proporcionado en el campo scriptUri anterior cuerda
validExitCodes Códigos de salida válidos para el script de PowerShell. [Valor predeterminado: 0] int[]

ImageTemplateShellCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. "Shell" (obligatorio)
Inline Matriz de comandos de shell que se van a ejecutar string[]
scriptUri URI del script de shell que se va a ejecutar para personalizar. Puede ser un vínculo de GitHub, un URI de SAS para Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de shell proporcionado en el campo scriptUri cuerda

ImageTemplateRestartCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. "WindowsRestart" (obligatorio)
restartCheckCommand Comando para comprobar si el reinicio se realizó correctamente [Valor predeterminado: ''] cuerda
restartCommand Comando para ejecutar el reinicio [Valor predeterminado: 'shutdown /r /f /t 0 /c "packer restart"'] cuerda
restartTimeout Tiempo de espera de reinicio especificado como una cadena de magnitud y unidad, por ejemplo, '5m' (5 minutos) o '2h' (2 horas) [Valor predeterminado: '5m'] cuerda

ImageTemplateWindowsUpdateCustomizer

Nombre Descripción Valor
tipo Tipo de herramienta de personalización que desea usar en la imagen. Por ejemplo, "Shell" puede ser personalizador de shell. "WindowsUpdate" (obligatorio)
filtros Matriz de filtros para seleccionar las actualizaciones que se van a aplicar. Omita o especifique una matriz vacía para usar el valor predeterminado (sin filtro). Consulte el vínculo anterior para obtener ejemplos y una descripción detallada de este campo. string[]
searchCriteria Criterios para buscar actualizaciones. Omita o especifique una cadena vacía para usar el valor predeterminado (buscar todo). Consulte el vínculo anterior para obtener ejemplos y una descripción detallada de este campo. cuerda
updateLimit Número máximo de actualizaciones que se aplicarán a la vez. Omitir o especificar 0 para usar el valor predeterminado (1000) Int

Restricciones:
Valor mínimo = 0

ImageTemplateDistributor

Nombre Descripción Valor
artifactTags Etiquetas que se aplicarán al artefacto una vez que el distribuidor haya creado o actualizado. objeto
runOutputName Nombre que se va a usar para el RunOutput asociado. string (obligatorio)

Restricciones:
Patrón = ^[A-Za-z0-9-_.]{1,64}$
tipo Establecimiento del tipo de objeto ManagedImage
SharedImage
VHD (obligatorio)

ImageTemplateManagedImageDistributor

Nombre Descripción Valor
tipo Tipo de distribución. "ManagedImage" (obligatorio)
imageId Identificador de recurso de la imagen de disco administrado string (obligatorio)
ubicación La ubicación de Azure de la imagen debe coincidir si la imagen ya existe string (obligatorio)

ImageTemplateSharedImageDistributor

Nombre Descripción Valor
tipo Tipo de distribución. "SharedImage" (obligatorio)
excludeFromLatest Marca que indica si la versión de la imagen creada debe excluirse de la versión más reciente. Omitir para usar el valor predeterminado (false). Bool
galleryImageId Identificador de recurso de la imagen de Azure Compute Gallery string (obligatorio)
replicationRegions [En desuso] Lista de regiones en las que se replicará la imagen. Esta lista solo se puede especificar si no se especifica targetRegions. Este campo está en desuso: use targetRegions en su lugar. string[]
storageAccountType [En desuso] Tipo de cuenta de almacenamiento que se usará para almacenar la imagen compartida. Omita usar el valor predeterminado (Standard_LRS). Este campo solo se puede especificar si se especifica replicationRegions. Este campo está en desuso: use targetRegions en su lugar. "Premium_LRS"
"Standard_LRS"
"Standard_ZRS"
targetRegions Las regiones de destino en las que se va a replicar la versión de imagen distribuida. Este objeto reemplaza replicationRegions y solo se puede especificar si no se especifica replicationRegions. TargetRegion[]
control de versiones Describe cómo generar un nuevo número de versión x.y.z para la distribución. DistributeVersioner

TargetRegion

Nombre Descripción Valor
nombre Nombre de la región. string (obligatorio)
replicaCount Número de réplicas de la versión de imagen que se va a crear en esta región. Omitir para usar el valor predeterminado (1). Int

Restricciones:
Valor mínimo = 1
storageAccountType Especifica el tipo de cuenta de almacenamiento que se va a usar para almacenar la imagen en esta región. Omita usar el valor predeterminado (Standard_LRS). "Premium_LRS"
"Standard_LRS"
"Standard_ZRS"

DistributeVersioner

Nombre Descripción Valor
esquema Establecimiento del tipo de objeto más reciente
de origen (obligatorio)

DistributeVersionerLatest

Nombre Descripción Valor
esquema Esquema de numeración de versión que se va a usar. "Latest" (obligatorio)
destacado Versión principal del número de versión generado. Determine qué es "latest" en función de las versiones con este valor como la versión principal. -1 es equivalente a dejar sin establecer. Int

DistributeVersionerSource

Nombre Descripción Valor
esquema Esquema de numeración de versión que se va a usar. "Origen" (obligatorio)

ImageTemplateVhdDistributor

Nombre Descripción Valor
tipo Tipo de distribución. "VHD" (obligatorio)
Uri URI opcional de Azure Storage para el blob de disco duro virtual distribuido. Omita usar el valor predeterminado (cadena vacía) en cuyo caso el disco duro virtual se publicaría en la cuenta de almacenamiento del grupo de recursos de almacenamiento provisional. cuerda

ImageTemplatePropertiesErrorHandling

Nombre Descripción Valor
onCustomizerError Si hay un error del personalizador y este campo se establece en "limpieza", se limpiará la máquina virtual de compilación y los recursos de red asociados. Este es el comportamiento predeterminado. Si se produce un error del personalizador y este campo se establece en "abort", se conservará la máquina virtual de compilación. "abort"
"limpieza"
onValidationError Si se produce un error de validación y este campo se establece en "limpieza", se limpiará la máquina virtual de compilación y los recursos de red asociados. Este es el comportamiento predeterminado. Si hay un error de validación y este campo se establece en "abort", se conservará la máquina virtual de compilación. "abort"
"limpieza"

ImageTemplatePropertiesOptimize

Nombre Descripción Valor
vmBoot La optimización se aplica en la imagen para un arranque de máquina virtual más rápido. ImageTemplatePropertiesOptimizeVmBoot

ImageTemplatePropertiesOptimizeVmBoot

Nombre Descripción Valor
estado La habilitación de este campo mejorará el tiempo de arranque de la máquina virtual mediante la optimización de la salida final de la imagen personalizada. "Deshabilitado"
"Habilitado"

ImageTemplateSource

Nombre Descripción Valor
tipo Establecimiento del tipo de objeto ManagedImage
PlatformImage
sharedImageVersion (obligatorio)

ImageTemplateManagedImageSource

Nombre Descripción Valor
tipo Especifica el tipo de imagen de origen con el que desea empezar. "ManagedImage" (obligatorio)
imageId Identificador de recurso de ARM de la imagen administrada en la suscripción de cliente string (obligatorio)

ImageTemplatePlatformImageSource

Nombre Descripción Valor
tipo Especifica el tipo de imagen de origen con el que desea empezar. "PlatformImage" (obligatorio)
ofrecer Oferta de imagen de la Imágenes de la Galería de Azure. cuerda
planInfo Configuración opcional del plan de compra para la imagen de plataforma. PlatformImagePurchasePlan
editor Image Publisher en Imágenes de la Galería de Azure. cuerda
Sku SKU de imagen de la Imágenes de la Galería de Azure. cuerda
Versión Versión de imagen de la Imágenes de La galería de Azure. Si se especifica 'latest' aquí, la versión se evalúa cuando tiene lugar la compilación de la imagen, no cuando se envía la plantilla. cuerda

PlatformImagePurchasePlan

Nombre Descripción Valor
planName Nombre del plan de compra. string (obligatorio)
planProduct Producto del plan de compra. string (obligatorio)
planPublisher Publicador del plan de compra. string (obligatorio)

ImageTemplateSharedImageVersionSource

Nombre Descripción Valor
tipo Especifica el tipo de imagen de origen con el que desea empezar. "SharedImageVersion" (obligatorio)
imageVersionId Identificador de recurso de ARM de la versión de la imagen. Cuando el nombre de la versión de la imagen es "latest", la versión se evalúa cuando se realiza la compilación de la imagen. string (obligatorio)

ImageTemplatePropertiesValidate

Nombre Descripción Valor
continueDistributeOnFailure Si se produce un error en la validación y este campo se establece en false, las imágenes de salida no se distribuirán. Este es el comportamiento predeterminado. Si se produce un error en la validación y este campo se establece en true, las imágenes de salida se seguirán distribuyendo. Use esta opción con precaución, ya que puede dar lugar a que se distribuyan imágenes incorrectas para su uso. En cualquier caso (true o false), la ejecución de la imagen de un extremo a otro se notificará como con errores en caso de error de validación. [Nota: Este campo no tiene ningún efecto si la validación se realiza correctamente].] Bool
inVMValidations Lista de validaciones que se van a realizar. ImageTemplateInVMValidator []
sourceValidationOnly Si este campo se establece en true, la imagen especificada en la sección "source" se validará directamente. No se ejecutará ninguna compilación independiente para generar y, a continuación, validar una imagen personalizada. Bool

ImageTemplateInVMValidator

Nombre Descripción Valor
nombre Nombre descriptivo para proporcionar contexto sobre lo que hace este paso de validación cuerda
tipo Establecimiento del tipo de objeto archivo de
powerShell
shell (obligatorio)

ImageTemplateFileValidator

Nombre Descripción Valor
tipo Tipo de validación que desea usar en la imagen. Por ejemplo, "Shell" puede ser validación del shell. "Archivo" (obligatorio)
destino Ruta de acceso absoluta a un archivo (con estructuras de directorio anidadas ya creadas) donde el archivo (desde sourceUri) se cargará en en la máquina virtual. cuerda
sha256Checksum Suma de comprobación SHA256 del archivo proporcionado en el campo sourceUri anterior cuerda
sourceUri URI del archivo que se va a cargar en la máquina virtual para la validación. Puede ser un vínculo de GitHub, un URI de Azure Storage (autorizado o SAS), etc. cuerda

ImageTemplatePowerShellValidator

Nombre Descripción Valor
tipo Tipo de validación que desea usar en la imagen. Por ejemplo, "Shell" puede ser validación del shell. "PowerShell" (obligatorio)
Inline Matriz de comandos de PowerShell que se van a ejecutar string[]
runAsSystem Si se especifica, el script de PowerShell se ejecutará con privilegios elevados mediante el usuario del sistema local. Solo puede ser true cuando el campo runElevated anterior está establecido en true. Bool
runElevated Si se especifica, el script de PowerShell se ejecutará con privilegios elevados. Bool
scriptUri URI del script de PowerShell que se va a ejecutar para la validación. Puede ser un vínculo de GitHub, un URI de Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de Power Shell proporcionado en el campo scriptUri anterior cuerda
validExitCodes Códigos de salida válidos para el script de PowerShell. [Valor predeterminado: 0] int[]

ImageTemplateShellValidator

Nombre Descripción Valor
tipo Tipo de validación que desea usar en la imagen. Por ejemplo, "Shell" puede ser validación del shell. "Shell" (obligatorio)
Inline Matriz de comandos de shell que se van a ejecutar string[]
scriptUri URI del script de shell que se va a ejecutar para la validación. Puede ser un vínculo de GitHub, un URI de Azure Storage, etc. cuerda
sha256Checksum Suma de comprobación SHA256 del script de shell proporcionado en el campo scriptUri cuerda

ImageTemplateVmProfile

Nombre Descripción Valor
osDiskSizeGB Tamaño del disco del sistema operativo en GB. Omita o especifique 0 para usar el tamaño de disco del sistema operativo predeterminado de Azure. Int

Restricciones:
Valor mínimo = 0
userAssignedIdentities Matriz opcional de identificadores de recursos de identidades administradas asignadas por el usuario que se van a configurar en la máquina virtual de compilación y la máquina virtual de validación. Esto puede incluir la identidad de la plantilla de imagen. string[]
vmSize Tamaño de la máquina virtual que se usa para compilar, personalizar y capturar imágenes. Omita o especifique una cadena vacía para usar el valor predeterminado (Standard_D1_v2 para imágenes gen1 y Standard_D2ds_v4 para imágenes de Gen2). cuerda
vnetConfig Configuración opcional de la red virtual que se va a usar para implementar la máquina virtual de compilación y la máquina virtual de validación en. Omita si no es necesario usar ninguna red virtual específica. virtualNetworkConfig

VirtualNetworkConfig

Nombre Descripción Valor
containerInstanceSubnetId Identificador de recurso de una subred preexistente en la que se implementará Azure Container Instance para compilaciones aisladas. Este campo solo se puede especificar si también se especifica subnetId y debe estar en la misma red virtual que la subred especificada en subnetId. cuerda
proxyVmSize Tamaño de la máquina virtual proxy que se usa para pasar tráfico a la máquina virtual de compilación y a la máquina virtual de validación. No se debe especificar si se especifica containerInstanceSubnetId porque no se implementa ninguna máquina virtual proxy en ese caso. Omita o especifique una cadena vacía para usar el valor predeterminado (Standard_A1_v2). cuerda
subnetId Identificador de recurso de una subred preexistente en la que se implementará la máquina virtual de compilación y la máquina virtual de validación. cuerda