Compartilhar via


A extração de imagens leva muito tempo para ser executada

Este artigo discute o que você pode fazer se um pull de imagem demorar muito para ser executado nas Instâncias de Contêiner do Microsoft Azure.

Pré-requisitos

Sintomas

  • Os grupos de contêineres ficam presos em um status "Criado" por um período significativo de tempo.

  • O tamanho da imagem usado para o grupo de contêineres é grande.

Motivo

Nas Instâncias de Contêiner, as imagens não são armazenadas em cache para sempre. Se a imagem não estiver armazenada em cache, ela será extraída do registro. Um pull do registro pode levar muito tempo se a imagem for grande. Esse é o comportamento esperado para imagens grandes e não armazenadas em cache.

Se você precisar de tempos de pull mais rápidos, verifique se uma das imagens em cache listadas funcionaria com êxito para seu caso de uso.

Solução

Execute o seguinte comando az container show para que você possa exibir a linha do tempo dos eventos de contêiner:

az container show --resource-group <resource-group-name> --name <container-group-name>

Neste exemplo, o evento de Pulling imagem começa às 16:30:51 e o evento bem-sucedido Pulled é registrado no mesmo dia às 16:48:43. Portanto, a extração da imagem leva quase 18 minutos para ser concluída. Você pode usar essas informações para determinar se o tempo de extração da imagem é esperado ou anormal.

{
  "containers": [
    {
      "command": null,
      "environmentVariables": [],
      "image": "pbdockerregistry-on.azurecr.io/software:166884UK",
      "instanceView": {
        "currentState": {
          "detailStatus": "",
          "exitCode": null,
          "finishTime": null,
          "startTime": "2019-01-22T16:49:11+00:00",
          "state": "Running"
        },
        "events": [
          {
            "count": 1,
            "firstTimestamp": "2019-01-22T16:30:51+00:00",
            "lastTimestamp": "2019-01-22T16:30:51+00:00",
            "message": "pulling image \"pbdockerregistry-on.azurecr.io/software:166884UK\"",
            "name": "Pulling",
            "type": "Normal"
          },
          {
            "count": 1,
            "firstTimestamp": "2019-01-22T16:48:43+00:00",
            "lastTimestamp": "2019-01-22T16:48:43+00:00",
            "message": "Successfully pulled image \"pbdockerregistry-on.azurecr.io/software:166884UK\"",
            "name": "Pulled",
            "type": "Normal"
          },
          {
            "count": 1,
            "firstTimestamp": "2019-01-22T16:48:43+00:00",
            "lastTimestamp": "2019-01-22T16:48:43+00:00",
            "message": "Created container with docker id 2dfc27ee4e6",
            "name": "Created",
            "type": "Normal"
          },
          {
            "count": 1,
            "firstTimestamp": "2019-01-22T16:49:11+00:00",
            "lastTimestamp": "2019-01-22T16:49:11+00:00",
            "message": "Started container with docker id 2edfc27ee4e6",
            "name": "Started",
            "type": "Normal"
          }
        ],
        "previousState": null,
        "restartCount": 0
      },
      "livenessProbe": null,
      "name": "<container-name>",
      "ports": [
        {
          "port": 443,
          "protocol": "TCP"
        }
      ],
      "readinessProbe": null,
      "resources": {
        "limits": null,
        "requests": {
          "cpu": 4.0,
          "memoryInGb": 4.0
        }
      },
      "volumeMounts": null
    }
  ],
  "diagnostics": null,
  "id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ContainerInstance/containerGroups/<container-name>",
  "identity": null,
  "imageRegistryCredentials": [
    {
      "password": null,
      "server": "<user-name>.azurecr.io",
      "username": "<user-name>"
    }
  ],
  "instanceView": {
    "events": [],
    "state": "Running"
  },
  "ipAddress": {
    "dnsNameLabel": "<container-name>",
    "fqdn": "<container-name>.westeurope.azurecontainer.io",
    "ip": "40.119.152.151",
    "ports": [
      {
        "port": 443,
        "protocol": "TCP"
      }
    ],
    "type": "Public"
  },
  "location": "westeurope",
  "name": "<container-name>",
  "networkProfile": null,
  "osType": "Windows",
  "provisioningState": "Succeeded",
  "resourceGroup": "<resource-group-name>",
  "restartPolicy": "Always",
  "tags": {},
  "type": "Microsoft.ContainerInstance/containerGroups",
  "volumes": null
}

Mais informações

Entre em contato conosco para obter ajuda

Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.