azure - 容器镜像不支持容器组指定的操作系统 'Linux'

标签 azure azure-devops azure-functions azure-web-app-service

我想使用 fileShare 准备 Microsoft 容器(需要框架 4.6),但出现错误。你知道出了什么问题吗?这是如何正确的?容器镜像“microsoft/aspnet”不支持容器组“mmsappcalculation-1”的指定操作系统“Linux”。

rafal@Azure:~$ # Change these four parameters as needed
rafal@Azure:~$ ACI_PERS_RESOURCE_GROUP=mmsAppCalculationGroup
rafal@Azure:~$ ACI_PERS_STORAGE_ACCOUNT_NAME=fileshare8956
rafal@Azure:~$ STORAGE_KEY=2Ee56ua3I4gU7TgcI3IhAICXhgt+UG0xSL/kb9+PKEGl40T/5rHflEy8DMHwbaFqZL0oMfwzcjyAXDsQDg1Q==
rafal@Azure:~$ ACI_PERS_SHARE_NAME=acishare
rafal@Azure:~$
rafal@Azure:~$
rafal@Azure:~$ az container create \
>     --resource-group $ACI_PERS_RESOURCE_GROUP \
>     --image microsoft/aspnet \
>     --name mmsappcalculation-1 \
>     --dns-name-label mmsappcalculation \
>     --ports 80 \
>     --azure-file-volume-account-name $ACI_PERS_STORAGE_ACCOUNT_NAME \
>     --azure-file-volume-account-key $STORAGE_KEY \
>     --azure-file-volume-share-name $ACI_PERS_SHARE_NAME \
>     --azure-file-volume-mount-path /app/sharedFile/
The container image 'microsoft/aspnet' doesn't support specified OS 'Linux' for container group 'mmsappcalculation-1'. 

在我运行这个之前

# Change these four parameters as needed
ACI_PERS_RESOURCE_GROUP=mmsAppCalculationGroup
ACI_PERS_STORAGE_ACCOUNT_NAME=fileshare$RANDOM
ACI_PERS_LOCATION=eastus
ACI_PERS_SHARE_NAME=acishare

# Create the storage account with the parameters
az storage account create \
    --resource-group $ACI_PERS_RESOURCE_GROUP \
    --name $ACI_PERS_STORAGE_ACCOUNT_NAME \
    --location $ACI_PERS_LOCATION \
    --sku Standard_LRS

# Create the file share
az storage share create \
  --name $ACI_PERS_SHARE_NAME \
  --account-name $ACI_PERS_STORAGE_ACCOUNT_NAME

更新 我也这样尝试,但还是不行

https://learn.microsoft.com/en-us/cli/azure/container?view=azure-cli-latest

>     --os-type Windows \
az: error: unrecognized arguments:
usage: az [-h] [--verbose] [--debug] [--only-show-errors]
          [--output {json,jsonc,yaml,yamlc,table,tsv,none}] [--query JMESPATH]
          {container} ...
rafal@Azure:~$     --cpu 2 \
>     --memory 3.5 \
>     --azure-file-volume-mount-path /app/sharedFile/
bash: --cpu: command not found
rafal@Azure:~$

最佳答案

如果您想运行 .Net core,您可以使用 Linux 或 Windows 容器。 如果您想运行 .Net Framework,您需要使用 Windows 容器。

microsoft/aspnet 使用 .Net Framework,因此您必须使用 Windows 容器来运行它。

如果您想在 Azure 应用服务中尝试此操作,请参阅以下快速入门,了解如何在 Azure 应用服务中运行自定义 Windows 容器: https://learn.microsoft.com/en-us/azure/app-service/app-service-web-get-started-windows-container

关于azure - 容器镜像不支持容器组指定的操作系统 'Linux',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62683361/

相关文章:

azure - SSO 将声明添加到社交登录 (SAML WS-Fed)

azure - Serilog 无法在 Service Fabric 中工作

c# - 我的 TFS 代理无法自动工作

c# - 使用 C# 以编程方式启用/禁用 Azure 中的函数

azure - 如何在 Azure Function 中注册自定义遥测以获得额外的自定义属性

mongodb - cosmosdb mongo api 不适用于某些命令

.net - 如何以编程方式获取 WebJob 的日志?

azure - 由于 'Forbidden',无法上传 Windows dll(使用 PublishBuildArtifacts 到 Azure DevOps)

azure-devops - 如何将 TestNG 或 Extent 报告与 Azure devops 集成?

php - Azure Function App - PHP 和 XML 输出