Azure容器注册表比从hub.docker.com获取图像慢

Azure容器注册表比从hub.docker.com获取图像慢,azure,azure-container-registry,Azure,Azure Container Registry,我正在努力提高Azure容器注册表的性能。出于某种原因,从docker hub中提取图像比使用ACR更快,即使容器和ACR都位于“美国东部”数据中心内 string containerImage = "**.azurecr.io/****"; containerGroup = azure.ContainerGroups.Define(this.containerGroupName) .WithRegion(azureRegion)

我正在努力提高Azure容器注册表的性能。出于某种原因,从docker hub中提取图像比使用ACR更快,即使容器和ACR都位于“美国东部”数据中心内

string containerImage = "**.azurecr.io/****";
containerGroup = azure.ContainerGroups.Define(this.containerGroupName)
                .WithRegion(azureRegion)
                .WithExistingResourceGroup(resourceGroupName)
                .WithLinux()
                .WithPrivateImageRegistry("***.azurecr.io", "ACR-username", "ACR-password")
                .WithoutVolume()
                .DefineContainerInstance(containerInstanceName)
                    .WithImage(containerImage)
                    .WithoutPorts()
                    .WithCpuCoreCount(currentCpu)
                    .WithMemorySizeInGB(currentRam)
                    .WithStartingCommandLine("/bin/sh", "-c", commandLine)
                    .Attach()
                .WithRestartPolicy(ContainerGroupRestartPolicy.Never)
                .WithLogAnalytics(workspaceId, workspaceKey)
                .Create();
在使用Docker hub时,我使用了一个具有完全相同Docker文件的公共图像。下面显示了唯一更改的代码

string containerImage = "registry.hub.docker.com/****";

...

.WithPublicImageRegistryOnly()

...

由于某些原因,使用ACR注册表时,容器处于“挂起”状态的时间比使用docker注册表时长得多

有人能指出我哪里出了问题吗?为什么ACR比docker耗时更长?ACR应该快得多,因为注册表和容器都位于同一个数据中心

编辑: 只是关于差异的一些统计数据: 700MB集装箱

ACR-启动时间

  • 容器启动时间158.0362116秒
  • 容器启动时间1003.6491133秒
  • 容器启动时间67.585987秒
  • 容器启动时间912.319042秒
Docker注册表-启动时间

  • 容器启动时间98.0485261秒
  • 容器启动时间278.4380892秒
  • 容器启动时间97.0235342秒
  • 容器启动时间307.8993358秒

    • 现在启动时间要快得多。完全相同的配置和容器使用ACR大约在6秒钟内启动