尝试通过函数应用从 Azure 容器注册表部署 nginix 容器,
得到一个错误,
Linux 工作者在资源组中不可用
如何启用 linux worker 到资源组?
用于部署的 Dockerfile,
FROM nginx
COPY dist /usr/share/nginx/html
尝试通过函数应用从 Azure 容器注册表部署 nginix 容器,
得到一个错误,
Linux 工作者在资源组中不可用
如何启用 linux worker 到资源组?
用于部署的 Dockerfile,
FROM nginx
COPY dist /usr/share/nginx/html
好像你不能在同一个资源组中拥有 linux 和 windows 资源
当前存在一个限制,即不能在同一资源组中混合 Windows 和 Linux 应用程序。
https://docs.microsoft.com/en-us/azure/app-service/containers/app-service-linux-intro#limitations
所以你目前唯一的选择是为 linux 资源创建一个新的资源组
[2022-02-16 更新]
现在似乎可以在 Linux 和 Windows 应用程序服务计划之间共享一个资源组:https ://docs.microsoft.com/en-us/azure/app-service/overview#limitations
[原来的]
无法在同一资源组和同一位置创建 linux 应用服务计划和 Windows 应用服务计划,但您可以使用同一资源组并将这两个计划部署在不同位置。
根据当前限制,对于同一资源组,您不能在同一区域中混合使用 Windows 和 Linux 应用程序。
https://docs.microsoft.com/en-us/azure/app-service/containers/app-service-linux-intro#limitations
虽然我发现如果您在创建 linux 应用服务计划之前通过REST api或terraform(也使用 REST api)创建了应用服务证书,也会发生同样的错误。在同一位置创建证书之前,您必须创建 linux 应用服务计划。
如果您为不同区域的 LINUX 应用程序创建应用程序服务计划(尽管资源组可以与 Windows 应用程序服务计划的资源组位于同一区域),它应该仍然有效。
在某些情况下,尝试创建函数应用程序时,您可能会收到以下错误...
- 您正在现有资源组中创建函数应用
- 此资源组已在您尝试创建函数应用程序的同一区域中包含常规(即非动态或高级)Web 应用程序。如果在具有相同操作系统的应用服务高级计划的资源组中创建 Azure Functions 高级计划,甚至会发生这种情况。
- 这些非动态或高级资源所在的缩放单元尚不支持此 SKU
- 您正在尝试在具有任何其他应用程序服务计划类型的资源组中创建 Linux 消耗应用程序。
...
即使在某些情况下,我们也有专门针对一个计划的池。例如,Linux 消费标记只能运行 linux 消费应用程序,因此您无法将 linux 消费计划与任何其他应用程序服务计划放在同一资源组中。功能本身可以在同一个资源组中,但计划不能。