问题标签 [azure-container-registry]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1016 浏览

asp.net - 如何将 ASP.NET 应用程序部署到 Azure 容器?- 不支持映像的操作系统版本

我正在尝试将 ASP.NET Web 应用程序部署到 Azure 容器实例,但出现此错误:

New-AzureRmContainerGroup:不支持映像“bwcontainercr.azurecr.io/azurecontainertest:v1”的操作系统版本。

以下是重现它的步骤:

文件、新建、项目、ASP .NET Web 应用程序(.NET 框架)

使用 .NET Framework 4.6.1

类型是 MVC

选中启用 Docker 支持

Dockerfile 包含

我可以按 F5,它在本地 docker 容器中运行,没有任何问题。

我使用这个 PowerShell 部署到 Azure。

它给了我上面的错误。似乎基本映像与 Azure 容器实例不兼容。如果我尝试直接部署它,我会得到同样的错误

New-AzureRmContainerGroup :不支持映像“microsoft/aspnet:4.7.1-windowsservercore-1709”的操作系统版本。

这很糟糕,因为当您在 VS 中添加 docker 支持时,它会使用此映像。

我尝试了许多不同的图像。这个无需我的应用程序即可自行部署。

所以我在我的应用程序中引用了该图像。它在我本地机器上的容器中构建和运行。

我部署了它,它成功了。但是当我转到 URL 时,它给了我一个 403 错误。

我在这里想念什么?

TIA,比尔·沃罗汉

0 投票
1 回答
476 浏览

azure - 如何从 docker 注册表中提取容器映像以部署 azure 容器

我目前在一个 azure 项目中工作,我们需要一种将图像推送到公共注册表的方法——它可以是 Azure ACR 或 docker 注册表。

看起来 Azure 不支持对 Azure ACR 的匿名读取访问。因此,唯一的方法是在 azure 中的容器部署期间将映像推送到 docker 注册表并从 docker 注册表中提取映像。

可能吗?如果是这样,我该如何使用 azure 模板来实现呢?请问有什么例子吗?

0 投票
2 回答
3902 浏览

c# - Kubernetes 无法提取具有未知 blob 错误的图像

我基于为 Windows 容器构建的 C#.NET 控制台应用程序的 microsoft/dotnet-framework 创建了一个 Docker 映像,然后确保我可以在本地容器中运行该映像。我成功地将映像推送到我们的 Azure 容器注册表。现在我正在尝试在我们的 Azure Kubernetes 服务中创建部署,但出现错误:

无法提取图像“容器注册表/图像:标签”:rpc 错误:代码 = 未知 desc = 未知 blob

我在 Kubernetes 仪表板中的部署、Pod 和副本集上看到此错误。

我们已经有一个与 azure-vote 应用程序一起使用的秘密,所以我认为这与秘密无关,但我可能是错的。

到目前为止,我已经尝试通过将以下 YAML 粘贴到 Kubernetes 仪表板的“创建”对话框中来创建此部署:

我还尝试运行这个 kubectl 命令的变体:

到目前为止,在我的调查中,我尝试阅读 k8s 的不同部分以了解可能出了什么问题,但这对我来说都是全新的。我认为这可能与这是基于 Windows Server 2016 的映像有关。一位团队成员成功地将 azure-vote 教程代码添加到我们的 AKS,所以我想知道对于运行基于 Windows 和 Linux 的容器的部署的单个 AKS 服务是否存在限制。我通过运行看到az aks listAKS 有一个带有“osType”的 agentPoolProfile:“Linux”,但我不知道这是否仅仅意味着编排器位于 Linux 中,或者 pod 中的容器是否必须基于 Linux。我发现了有关“未知 blob”错误的 stackoverflow 问题,这似乎是这个问题的答案可能支持我的假设,但我不知道该问题是否与我的问题有关。

由于该错误与未能提取图像有关,因此我认为这与为此部署配置服务无关。添加服务并没有改变任何东西。在怀疑图像已损坏的情况下,我尝试重建我的应用程序,但重建和重新注册没有效果。我读到的另一件似乎不相关的事情是关于明显不匹配的问题和答案(我还不完全理解)。

我还没有尝试创建本地 Kubernetes。我不知道这是否是人们通常会做的事情。

问题总结:

  1. 是什么导致了这个未知的 blob 错误?它是否与 Windows 容器/Linux 容器不匹配有关?
  2. 代理池配置文件会影响集群中的所有节点,还是只影响“主”节点?

如果您需要更多信息,请与我们联系。谢谢。

0 投票
1 回答
1043 浏览

azure - Azure 容器实例的可缓存 Docker 映像

我正在尝试使用 Azure 容器实例,但长时间拉取图像时遇到问题。ACI 拉取我的图像大约需要 3 分钟。

我已经检查了故障排除指南,其中包含以下内容:

为确保最快的 Windows 容器启动时间,请使用以下两个映像的三个最新版本之一作为基础映像: microsoft/windowsservercoremicrosoft/nanoserver

我的图像非常简单,并且基于microsoft/windowsservercore:ltsc2016故障排除指南中的建议。这是Dockerfilecirrusci/windowsservercore:2016图像本身

我可以看到,如果我只是尝试启动microsoft/windowsservercore:ltsc2016,启动它只需要大约 20 秒。所以我的猜测是它microsoft/windowsservercore:ltsc2016确实被缓存了,但不是文档声称的最新摘要。我想知道是否有任何方法可以找出 ACI 缓存的图像的确切摘要?

注意:我已尝试将映像从 Docker Hub 移动到建议的同一区域中的 Azure Container Registry 。它没有多大帮助。拉取图像仍然大约 3 分钟。

0 投票
1 回答
52 浏览

azure - Azure 容器注册表不确定性下降

此错误没有实际的重现步骤,我非常随机地收到此错误。由于下面提到的错误,我的部署脚本意外失败。

错误截图

上面的错误信息看起来有点模糊,不幸的是我现在没有文字错误,但下次肯定会复制。

0 投票
1 回答
1403 浏览

azure - WSL - 无法从 azure 容器注册表登录或提取图像

我已经设置了WSL然后按照本教程安装停靠,然后安装 azure cli。我可以从 Windows 命令行登录;但我无法使用 bash 中的以下命令登录到 azure 容器注册表

我收到以下错误

来自守护程序的错误响应:获取https://ACRNAME.azurecr.io/v2/:未经授权:需要身份验证

而且,如果我试图通过

得到同样的错误

来自守护程序的错误响应:获取https://ACRNAME.azurecr.io/v2/:未经授权:需要身份验证

但我可以看到列表。以下命令返回列表

我发现了这个已关闭的问题并将我的机器 DNS 服务器更改为 8.8.8.8 但没有进展。我错过了什么?

0 投票
2 回答
2831 浏览

azure - az acr login 等价的powershell是什么

使用 powershell 我们如何登录到 Azure 容器注册表。提供的示例仅适用于 Azure CLI

0 投票
4 回答
968 浏览

azure - Azure CLI:在一个命令中删除存储库中的所有未标记图像

我将 docker 映像存储在 Azure 上的私有存储库中。每次我将具有相同标签(例如,最新)的图像推送到该存储库时,前一个图像将变为未标记,但仍保留在存储库中。这导致在存储库中堆叠了许多未标记的图像。我想要一个命令,使用 azure cli,一次性删除所有未标记的图像。

例如,键入以下命令:

az acr repository show-manifests -n myRegistry --repository myRepo

为 d24-staging-fuzzy-search-srv 存储库返回了几个清单:

[ { "digest": "sha256:blablabla1", "tags": null, "timestamp": "t1" }, { "digest": "sha256:blablabla2", "tags": null, "timestamp": "t2" }, { "digest": "sha256:blablabla3", "tags": [ "latest" ], "timestamp": "t3" }]

我想在 azure cli 中有一个命令,它删除所有标签为“null”的 mainfest,并保留标签为“latest”的那个

0 投票
0 回答
172 浏览

mongodb - 为什么我的 mongodb 映像没有推送到 azure 容器注册表?

我的 nodejs 应用程序的应用程序映像被推送到 azure 容器寄存器,但我的 mongo 映像不是它。为什么?

这是我的码头文件。

这是我的 docker-compose 文件。

0 投票
4 回答
6267 浏览

azure - Azure Functions Docker 部署 Linux 工作人员在资源组中不可用

尝试通过函数应用从 Azure 容器注册表部署 nginix 容器,

得到一个错误,

Linux 工作者在资源组中不可用

如何启用 linux worker 到资源组?

用于部署的 Dockerfile,