Použití připojení úložiště v Azure Container Apps

Aplikace typu kontejner má přístup k různým typům úložiště. Jedna aplikace může v případě potřeby využívat více než jeden typ úložiště.

Poznámka:

Nepoužívejte speciální znaky v názvech svazků, abyste zabránili selháním nasazení. Například svazek s názvem credentials.json obsahuje speciální znak (.), což vede k chybě nasazení.

Typ úložiště Popis Uchování Příklad využití
Úložiště s kontejnerovým rozsahem Dočasné úložiště dostupné pro spuštěný kontejner Data je k dispozici, dokud se kontejner nevypne. Zápis místní mezipaměti aplikací
Úložiště omezené na repliku Dočasné úložiště pro sdílení souborů mezi kontejnery ve stejné replice Data jsou k dispozici, dokud se replika nevypnou. Hlavní kontejner aplikace zapisuje soubory protokolu, které zpracovává sidecar kontejner.
Azure Files Trvalé úložiště Data se uchovávají v Azure Files Zápis souborů do sdílené složky, aby byla data přístupná jinými systémy.

Poznámka:

Azure Container Apps nepodporuje připojení sdílených složek z Azure NetApp Files nebo Azure Blob Storage.

Dočasné úložiště

Aplikace kontejneru může číst a zapisovat dočasná data do dočasného úložiště. Dočasné úložiště může být vymezeno na kontejner nebo repliku. Celkové množství úložiště spravovaného na úrovni kontejneru a repliky, které je dostupné pro každou repliku, závisí na celkovém počtu virtuálních procesorů přidělených replikě.

vCPU Celkové dočasné úložiště
0,25 nebo nižší 1 GiB
0,5 nebo nižší 2 GiB
1 nebo nižší 4 GiB
Více než 1 8 GiB

Úložiště s omezením na kontejner

Kontejner může zapisovat do vlastního systému souborů.

Úložiště systému souborů kontejneru má následující charakteristiky:

  • Úložiště je dočasné a zmizí, když se kontejner vypne nebo restartuje.
  • Soubory zapsané do tohoto úložiště uvidí jenom procesy spuštěné v aktuálním kontejneru.

Úložiště v rozsahu replik

Můžete připojit efemérní, dočasný svazek, který je ekvivalentní k EmptyDir (prázdnému adresáři) v Kubernetes. Toto úložiště je omezené na jednu repliku. Ke sdílení dat mezi kontejnery ve stejné replice použijte EmptyDir svazek.

Úložiště omezené na repliku má následující charakteristiky:

  • Soubory se uchovávají po celou dobu životnosti repliky.
    • Pokud se kontejner v replice restartuje, zůstanou soubory ve svazku.
  • Všechny inicializační kontejnery nebo kontejnery aplikací v replice můžou připojit stejný svazek.
  • Kontejner může připojit více EmptyDir svazků.

Pokud chcete nakonfigurovat úložiště s oborem repliky, nejprve definujte EmptyDir svazek v revizi. Pak definujte připojení svazku v revizi do jednoho nebo více kontejnerů.

Požadavky

Požadavek Pokyny
účet Azure Pokud ho nemáte, vytvořte si účet zdarma.
Azure Container Apps prostředí Vytvořte prostředí kontejnerových aplikací.

Konfigurace

Když nakonfigurujete úložiště s rozsahem replik pomocí Azure CLI, musíte k vytvoření nebo aktualizaci aplikace kontejneru použít definici YAML.

  1. Pokud chcete aktualizovat existující aplikaci kontejneru tak, aby používala úložiště s oborem repliky, exportujte specifikaci aplikace do souboru YAML s názvem app.yaml.

    az containerapp show -n <APP_NAME> -g <RESOURCE_GROUP_NAME> -o yaml > app.yaml
    
  2. Proveďte následující změny specifikace vaší aplikace kontejneru.

    • volumes Přidejte pole do template části definice aplikace kontejneru a definujte svazek. Pokud už máte pole volumes, přidejte do pole nový svazek.
      • Jedná se name o identifikátor svazku.
      • Použijte EmptyDir jako storageType.
    • Pro každý kontejner v šabloně, ve kterém chcete připojit svazek, definujte připojení svazku v poli volumeMounts definice kontejneru.
      • volumeName je název definovaný v poli volumes.
      • Je to mountPath cesta v kontejneru pro připojení svazku.
    properties:
      managedEnvironmentId: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP_NAME>/providers/Microsoft.App/managedEnvironments/<ENVIRONMENT_NAME>
      configuration:
        activeRevisionsMode: Single
      template:
        containers:
        - image: <IMAGE_NAME1>
          name: my-container-1
          volumeMounts:
          - mountPath: /myempty
            volumeName: myempty
        - image: <IMAGE_NAME_2>
          name: my-container-2
          volumeMounts:
          - mountPath: /myempty
            volumeName: myempty
        volumes:
        - name: myempty
          storageType: EmptyDir
    
  3. Aktualizujte aplikaci kontejneru pomocí souboru YAML.

    az containerapp update --name <APP_NAME> --resource-group <RESOURCE_GROUP_NAME> \
        --yaml app.yaml
    

Úplný příklad najdete ve specifikaci YAML.

Pokud chcete vytvořit svazek s vymezeným replikou a připojit ho do kontejneru, proveďte následující změny prostředku aplikací kontejnerů v šabloně ARM:

  • volumes Přidejte pole do template části definice aplikace kontejneru a definujte svazek. Pokud už máte pole volumes, přidejte do pole nový svazek.
    • Jedná se name o identifikátor svazku.
    • Použijte EmptyDir jako storageType.
  • Pro každý kontejner v šabloně, ve kterém chcete připojit svazek, definujte připojení svazku v poli volumeMounts definice kontejneru.
    • volumeName je název definovaný v poli volumes.
    • Je to mountPath cesta v kontejneru pro připojení svazku.

Příklad fragmentu šablony ARM:

{
  "apiVersion": "2022-03-01",
  "type": "Microsoft.App/containerApps",
  "name": "[parameters('containerappName')]",
  "location": "[parameters('location')]",
  "properties": {

    ...

    "template": {
      "revisionSuffix": "myrevision",
      "containers": [
        {
          "name": "main",
          "image": "[parameters('container_image')]",
          "resources": {
            "cpu": 0.5,
            "memory": "1Gi"
          },
          "volumeMounts": [
            {
              "mountPath": "/myempty",
              "volumeName": "myempty"
            }
          ]
        },
        {
          "name": "sidecar",
          "image": "[parameters('sidecar_image')]",
          "resources": {
            "cpu": 0.5,
            "memory": "1Gi"
          },
          "volumeMounts": [
            {
              "mountPath": "/myempty",
              "volumeName": "myempty"
            }
          ]
        }
      ],
      "scale": {
        "minReplicas": 1,
        "maxReplicas": 3
      },
      "volumes": [
        {
          "name": "myempty",
          "storageType": "EmptyDir"
        }
      ]
    }
  }
}

Úplný příklad najdete ve specifikaci rozhraní API šablony ARM.

Pokud chcete vytvořit svazek s vymezeným replikou a připojit ho do kontejneru, nasaďte novou revizi aplikace kontejneru pomocí portálu Azure.

  1. Na portálu Azure přejděte do aplikace kontejneru.

  2. V nabídce vlevo vyberte Správa revizí.

  3. Vyberte Vytvořit novou revizi.

  4. Vyberte kontejner, do kterého chcete svazek připojit.

  5. V podokně Upravit kontejner vyberte záložku Přípojné body svazku.

  6. V části Dočasné úložiště vytvořte nový svazek s následujícími informacemi:

    • Název svazku: Název pro přechodný svazek.
    • Cesta k připojení: Absolutní cesta v kontejneru pro připojení svazku.
  7. Výběrem možnosti Uložit uložte změny a ukončete kontextové podokno.

  8. Výběrem možnosti Vytvořit vytvořte novou revizi.

Azure Files svazek

Sdílenou složku můžete připojit z Azure Files jako svazek v kontejneru.

Important

Azure Container Apps podporuje pouze klasické sdílené složky Azure Files, které se vytvářejí v rámci účtu úložiště (prostředek typu Microsoft.Storage/storageAccounts/fileServices/shares). Container Apps nepodporuje Microsoft.FileShares novější typ zdrojů nejvyšší úrovně. Pokud se pokusíte připojit Microsoft.FileShares prostředek, operace se nezdaří. Pro vytvoření podporovaného sdílení souborů viz Vytvořit klasickou Azure sdílenou složku.

Azure Files úložiště má následující charakteristiky:

  • Soubory zapsané pod umístěním připojení se zachovají do sdílené složky.
  • Soubory ve sdílené složce jsou dostupné prostřednictvím umístění připojení.
  • Několik kontejnerů může připojit stejnou sdílenou složku, včetně těch, které jsou v jiné replice, revizi nebo aplikaci kontejneru.
  • Všechny kontejnery, které připojují sdílenou složku, mají přístup k souborům napsaným jakýmkoli jiným kontejnerem nebo metodou.
  • Do jednoho kontejneru je možné připojit více Azure Files svazků.

Azure Files podporuje protokoly SMB (Server Message Block) i NFS (Network File System). Sdílenou složku Azure Files můžete připojit pomocí některého protokolu. Sdílená složka, kterou definujete v prostředí, musí být nakonfigurovaná se stejným protokolem používaným sdílenou složkou v účtu úložiště.

Pro nová připojení souborů SMB použijte ověřování pomocí spravované identity (náhled) místo klíčů účtu úložiště. Container Apps používá k ověřování vůči Azure Files systémově nebo uživatelem přiřazenou spravovanou identitu přiřazenou prostředí Container Apps, nikoli jednotlivé kontejnerové aplikaci. Tento režim eliminuje nutnost získávat, ukládat nebo obměňovat klíč účtu úložiště. V definici úložiště musíte explicitně zvolit ověřování pomocí spravované identity; stávající připojení pomocí klíče účtu úložiště zůstávají podporována.

Ověření spravované identity se vztahuje pouze na sdílení SMB. Sdílené složky NFS používají řízení přístupu na základě sítě a nepoužívají nastavení ověřování SMB.

Pro povolení úložiště Azure Files ve vašem kontejneru nastavte prostředí a aplikaci kontejneru následovně:

  • Vytvořte definici úložiště v prostředí Container Apps.
  • Pokud používáte systém souborů NFS, musí být vaše prostředí nakonfigurované s vlastní virtuální sítí a účet úložiště musí být nakonfigurovaný tak, aby povoloval přístup z virtuální sítě. Další informace naleznete v sdílených složkách NFS v Azure Files .
  • Pokud používáte NFS, úložiště nemusí vyžadovat šifrované NFS připojení. Container Apps nepodporuje šifrování při přenosu pro NFS sdílené soubory. Pokud je v účtu úložiště povolené nastavení Require Encryption in Transit for NFS nebo pokud toto nastavení není nakonfigurováno a je povolené Secure transfer required, připojení se nezdaří a zobrazí se chyba, například mount.nfs: access denied by server while mounting. Další informace najdete v článku Šifrování přenášených dat pro sdílené složky NFS Azure Files.
  • Pokud je vaše prostředí nakonfigurované s vlastní virtuální sítí, musíte povolit porty 445 a 2049 ve skupině zabezpečení sítě (NSG) přidružené k podsíti.
  • Definujte svazek typu AzureFile (SMB) nebo NfsAzureFile NFS v revizi.
  • Definujte připojení svazku v jednom nebo více kontejnerech v revizi.
  • Použitý účet úložiště Azure Files musí být přístupný z virtuální sítě vaší aplikace kontejneru. Další informace naleznete v tématu Udělení přístupu z virtuální sítě.

Požadavky

Požadavek Pokyny
účet Azure Pokud ho nemáte, vytvořte si účet zdarma.
účet Azure Storage Vytvořte si úložný účet s klasickým Azure sdíleným souborem.
Azure Container Apps prostředí Vytvořte prostředí kontejnerových aplikací.
Spravovaná identita pro autentizaci SMB Povolte systémově přiřazenou spravovanou identitu prostředí nebo prostředí přiřaďte uživatelem přiřazenou spravovanou identitu. Podívejte se na Spravovat identity prostředí.
Nastavení úložného účtu pro autentizaci spravované identity SMB Povolte spravovanou identitu pro SMB (SMBOAuth) na úložném účtu. Jeho bezpečnostní nastavení SMB musí také umožňovat autentizaci pomocí Kerberos.
Azure RBAC for SMB managed identity authentication Přiřaďte roli Storage File Data SMB MI Admin k identitě vybraného prostředí v rozsahu úložného účtu. Viz Přiřadit vestavěnou RBAC roli spravované identitě. Pro přiřazení rolí potřebujete Microsoft.Authorization/roleAssignments/write oprávnění v tomto rozsahu. Počkejte, až se přiřazení rolí projeví, než připojíte sdílenou složku.

Konfigurace

Když nakonfigurujete aplikaci kontejneru tak, aby připojila svazek Azure Files pomocí Azure CLI, musíte k vytvoření nebo aktualizaci aplikace kontejneru použít definici YAML.

Nainstalujte nejnovější Azure CLI a aktualizujte rozšíření Container Apps:

az extension add --name containerapp --upgrade

Podrobný kurz připojení sdílené složky SMB najdete v tématu Vytvoření připojení úložiště Azure Files v Azure Container Apps.

  1. Přidejte do prostředí Container Apps definici úložiště.

    Ověřování spravovanou identitou (doporučeno)

    Pro použití systémem přiřazené spravované identity prostředí nejprve povolte:

    az containerapp env identity assign --name my-env --resource-group my-group \
        --system-assigned
    

    Přidělte identitě roli Storage File Data SMB MI Admin na vašem úložném účtu a povolte Managed Identity for SMB, jak je popsáno v předpokladech. Poté vytvořte definici úložiště:

    az containerapp env storage set --name my-env --resource-group my-group \
        --storage-name mystorage \
        --storage-type AzureFile \
        --azure-file-account-name <STORAGE_ACCOUNT_NAME> \
        --azure-file-identity system \
        --azure-file-share-name <STORAGE_SHARE_NAME> \
        --access-mode ReadWrite
    

    Nahraďte <STORAGE_ACCOUNT_NAME> a <STORAGE_SHARE_NAME> názvem svého účtu úložiště a názvem sdílené složky. Hodnota system určuje systémově přiřazenou spravovanou identitu prostředí.

    Pro použití uživatelem přiřazené spravované identity ji místo toho přiřaďte k prostředí:

    az containerapp env identity assign --name my-env --resource-group my-group \
        --user-assigned <MANAGED_IDENTITY_RESOURCE_ID>
    

    Přidělte této identitě stejnou roli na úložném účtu. V příkazu storage nahraďte --azure-file-identity system za --azure-file-identity <MANAGED_IDENTITY_RESOURCE_ID>, přičemž použijete plné Azure resource ID identity, nikoli její klientské ID nebo principal ID.

    Nekombinujte --azure-file-identity s --azure-file-account-key ani --azure-file-key-vault-secret-url. Tyto autentizační režimy se vzájemně vylučují.

    Ověřování pomocí klíče účtu úložiště (alternativa)

    Pokud nemůžete použít ověřování pomocí spravované identity, můžete místo toho použít klíč k účtu úložiště:

    az containerapp env storage set --name my-env --resource-group my-group \
        --storage-name mystorage \
        --storage-type AzureFile \
        --azure-file-account-name <STORAGE_ACCOUNT_NAME> \
        --azure-file-account-key <STORAGE_ACCOUNT_KEY> \
        --azure-file-share-name <STORAGE_SHARE_NAME> \
        --access-mode ReadWrite
    

    Nahraďte <STORAGE_ACCOUNT_NAME> názvem a <STORAGE_ACCOUNT_KEY> klíčem vašeho účtu úložiště. Nahraďte <STORAGE_SHARE_NAME> názvem sdílené složky v účtu úložiště.

    Platné hodnoty jsou --access-modeReadWrite a ReadOnly.

  2. Pokud chcete aktualizovat existující aplikaci kontejneru tak, aby připojila sdílenou složku, exportujte specifikaci aplikace do souboru YAML s názvem app.yaml.

    az containerapp show -n <APP_NAME> -g <RESOURCE_GROUP_NAME> -o yaml > app.yaml
    
  3. Proveďte následující změny specifikace vaší aplikace kontejneru.

    • volumes Přidejte pole do template části definice aplikace kontejneru a definujte svazek. Pokud už máte pole volumes, přidejte do pole nový svazek.
      • Jedná se name o identifikátor svazku.
      • Pro storageType použijte AzureFile pro SMB nebo NfsAzureFile pro NFS. Tato hodnota musí odpovídat typu úložiště, který jste definovali v prostředí.
      • Použijte storageNamenázev úložiště, které jste definovali v prostředí.
      • Jedná se mountOptions o řetězec oddělený čárkami obsahující možnosti připojení. Další informace najdete v tématu Použití nastavení mountOptions v Azure Files.
      • Seznam secrets je seznam tajných kódů pro připojení ke svazku. Další informace naleznete v tématu Montování tajemství ve svazku.
    • Pro každý kontejner ve šabloně, ve které chcete připojit úložiště Azure Files, definujte svazek v poli volumeMounts definice kontejneru.
      • volumeName je název definovaný v poli volumes.
      • Je to mountPath cesta v kontejneru pro připojení svazku.
      • Je to cesta ke svazku subPath, který má být připojen. Pokud tuto hodnotu nezadáte, připojí se kořenový svazek. Pro více informací viz Subpath.
    properties:
      managedEnvironmentId: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP_NAME>/providers/Microsoft.App/managedEnvironments/<ENVIRONMENT_NAME>
      configuration:
      template:
        containers:
        - image: <IMAGE_NAME>
          name: my-container
          volumeMounts:
          - volumeName: azure-files-volume
            mountPath: /my-files
            subPath: my-sub-path
        volumes:
        - name: azure-files-volume
          storageType: AzureFile
          storageName: mystorage
    
  4. Aktualizujte aplikaci kontejneru pomocí souboru YAML.

    az containerapp update --name <APP_NAME> --resource-group <RESOURCE_GROUP_NAME> \
        --yaml app.yaml
    

Úplný příklad najdete ve specifikaci YAML.

Následující fragmenty šablon ARM ukazují, jak přidat sdílenou složku Azure Files do prostředí Container Apps a jak ji použít v kontejnerové aplikaci. Pro ověřování pomocí spravované identity SMB povolte nebo přiřaďte identitu v prostředí a před nasazením definice úložiště splňte požadavky pro účet úložiště.

  1. Přidejte podřízený prostředek storages do prostředí Container Apps.

    Ověřování spravovanou identitou (doporučeno)

    Nejprve povolte spravovanou identitu na zdroji Microsoft.App/managedEnvironments , ne na zdroji Microsoft.App/containerApps . Pro povolení systémově přiřazené identity prostředí přidejte do zdroje prostředí následující vlastnost nejvyšší úrovně identity :

    {
      "identity": {
        "type": "SystemAssigned"
      }
    }
    

    Sloučte tento fragment do svého stávajícího zdroje prostředí, přičemž si zachováte jeho ostatní konfiguraci. Použijte verzi API prostředí, která podporuje spravované identity, například 2026-03-02-preview. Pro schéma prostředku viz Microsoft.App/managedEnvironments.

    Povolte spravovanou identitu pro SMB (SMBOAuth) na účtu úložiště a přiřaďte identitě prostředí roli Storage File Data SMB MI Admin v oboru účtu úložiště, jak je popsáno v požadavcích.

    Pak použijte API verzi 2026-03-02-preview pro prostředek úložiště. Nastavte properties.azureFile.identity na system a vyberte systémem přiřazenou identitu prostředí:

    {
      "type": "Microsoft.App/managedEnvironments/storages",
      "apiVersion": "2026-03-02-preview",
      "name": "[concat(parameters('environment_name'), '/myazurefiles')]",
      "properties": {
        "azureFile": {
          "accountName": "[parameters('storage_account_name')]",
          "identity": "system",
          "shareName": "[parameters('storage_share_name')]",
          "accessMode": "ReadWrite"
        }
      }
    }
    

    Pro použití uživatelem přiřazené spravované identity ji přidej do vlastnosti na nejvyšší úrovni identity prostředí:

    {
      "identity": {
        "type": "UserAssigned",
        "userAssignedIdentities": {
          "[parameters('managed_identity_resource_id')]": {}
        }
      }
    }
    

    Definujte parametr managed_identity_resource_id jako string, který obsahuje úplné ID prostředku Azure identity. V úložném zdroji nastavte properties.azureFile.identity na [parameters('managed_identity_resource_id')] místo system. Přidělte této identitě stejnou roli na úložném účtu.

    Zachovejte všechny identity, které jsou již přiřazeny k prostředí. Pokud povolíte oba typy identit, použijte SystemAssigned,UserAssigned pro identity.type prostředí a zachovejte jeho userAssignedIdentities záznamy.

    Nezahrnujte accountKey nebo accountKeyVaultProperties při použití ověřování pomocí spravované identity. Pro schéma úložných zdrojů viz Microsoft.App/managedEnvironments/storages.

    Ověřování pomocí klíče účtu úložiště (alternativa)

    Pro použití klíče úložného účtu nastavte accountKey a vynechte identity. Definujme parametr šablony storage_account_key jako secureString.

    {
      "type": "Microsoft.App/managedEnvironments/storages",
      "apiVersion": "2022-03-01",
      "name": "[concat(parameters('environment_name'), '/myazurefiles')]",
      "properties": {
        "azureFile": {
          "accountName": "[parameters('storage_account_name')]",
          "accountKey": "[parameters('storage_account_key')]",
          "shareName": "[parameters('storage_share_name')]",
          "accessMode": "ReadWrite"
        }
      }
    }
    

    Tyto ukázky kódu pro úložiště předpokládají, že prostředí a sdílená složka již existují. Pokud je nasadíte ve stejné šabloně, přidejte prostředí a zdroje sdílení souborů do pole dependsOn prostředku úložiště. Pro ověřování pomocí spravované identity také přidejte závislost na přiřazení role, pokud ji vytvoříte v této šabloně. Závislost nasazení neodstraní zpoždění šíření přiřazení rolí.

  2. Aktualizujte prostředek kontejnerové aplikace, abyste přidali svazek a jeho připojení.

    Autentizace SMB je konfigurována v definici úložiště prostředí. Konfigurace hlasitosti na úrovni aplikace je stejná pro autentizaci spravovanou identitou a pomocí klíče účtu úložiště. Pokud nasadíte úložný zdroj a kontejnerovou aplikaci ve stejné šabloně, přidejte úložný zdroj do pole dependsOn kontejnerové aplikace.

    {
      "apiVersion": "2023-05-01",
      "type": "Microsoft.App/containerApps",
      "name": "[parameters('containerappName')]",
      "location": "[parameters('location')]",
      "properties": {
    
        ...
    
        "template": {
          "revisionSuffix": "myrevision",
          "containers": [
            {
              "name": "main",
              "image": "[parameters('container_image')]",
              "resources": {
                "cpu": 0.5,
                "memory": "1Gi"
              },
              "volumeMounts": [
                {
                  "mountPath": "/myfiles",
                  "volumeName": "azure-files-volume",
                  "subPath": "my-sub-path"
                }
              ]
            }
          ],
          "scale": {
            "minReplicas": 1,
            "maxReplicas": 3
          },
          "volumes": [
            {
              "name": "azure-files-volume",
              "storageType": "AzureFile",
              "storageName": "myazurefiles"
            }
          ]
        }
      }
    }
    
    • volumes Přidejte pole do template části definice aplikace kontejneru a definujte svazek. Pokud už máte pole volumes, přidejte do pole nový svazek.
      • Jedná se name o identifikátor svazku.
      • Pro storageType použijte AzureFile pro SMB nebo NfsAzureFile pro NFS. Tato hodnota musí odpovídat typu úložiště, který jste definovali v prostředí.
      • Použijte storageNamenázev úložiště, které jste definovali v prostředí.
      • Jedná se mountOptions o řetězec oddělený čárkami obsahující možnosti připojení. Další informace najdete v tématu Použití nastavení mountOptions v Azure Files.
      • Seznam secrets je seznam tajných kódů pro připojení ke svazku. Další informace naleznete v tématu Montování tajemství ve svazku.
    • Pro každý kontejner ve šabloně, ve které chcete připojit úložiště Azure Files, definujte svazek v poli volumeMounts definice kontejneru.
      • volumeName je název definovaný v poli volumes.
      • Je to mountPath cesta v kontejneru pro připojení svazku.
      • ( subPath volitelné) je cesta ve svazku, který se má připojit. Pokud ho nezadáte, připojí se kořenový svazek. Pro více informací viz Subpath.

Úplný příklad najdete ve specifikaci rozhraní API šablony ARM.

Pokud chcete nakonfigurovat připojení svazku pro úložiště Azure Files na portálu Azure, přidejte souborový podíl do prostředí Container Apps a poté přidejte ke své kontejnerové aplikaci připojení svazku vytvořením nové revize. Pro nová připojení SMB vyberte ověřování spravovanou identitou.

  1. Na portálu Azure přejděte do prostředí Container Apps.

  2. Pro autentizaci spravované identity SMB vyberte Nastavení>identity a povolte systémově přiřazenou identitu nebo přidejte uživatelem přiřazenou identitu do prostředí. Před přidáním sdílené složky dokončete nastavení úložného účtu a přiřazení rolí popsaných v požadavcích Azure Files.

  3. V navigačním podokně pod položkou Nastavení vyberte Připojení svazků.

  4. Vyberte Přidat.

  5. V závislosti na protokolu používaném vaší sdílenou složkou vyberte protokol SMB (Server Message Block) nebo systém souborů NFS (Network File System).

  6. V kontextovém podokně Přidat sdílenou složku zadejte následující informace:

    • Název: Název definice úložiště prostředí.
    • Název účtu úložiště: Název účtu úložiště, který obsahuje sdílenou složku.
    • Autentizace: Vyberte spravovanou identitu (doporučeno).
    • Identita: Vyberte systémově přiřazenou identitu prostředí nebo uživatelem přiřazenou identitu přiřazenou k prostředí ze seznamu spravovaných identit. Vyberte identitu, která má na účtu úložiště roli Storage File Data SMB MI Admin.
    • Název sdílení souborů: Název sdílení souborů SMB.
    • Režim přístupu: Režim přístupu pro sdílenou složku. Platné hodnoty jsou jen pro čtení a zápis a jen pro čtení.

    Pro použití ověřování pomocí klíče účtu úložiště místo toho vyberte v části Autentizace možnost Klíč účtu úložiště a zadejte přístupový klíč účtu úložiště. Vyberte jednu autentizační metodu pro definici úložiště.

  7. Výběrem možnosti Přidat ukončíte kontextové podokno.

  8. Výběrem možnosti Uložit potvrďte změny.

  9. Přejděte do aplikace kontejneru.

  10. V navigačním podokně v části Aplikace vyberte Revize a repliky.

  11. Vyberte Vytvořit novou revizi.

  12. Na stránce Vytvořit a nasadit novou revizi vyberte záložku Svazky.

  13. Vyberte Přidat.

  14. V podokně Přidat svazek nastavte následující hodnoty.

    • Typ svazku: Azure svazek souborů.
    • Název: Zadejte název svazku.
    • Název sdílené složky: Vyberte sdílenou složku, kterou jste vytvořili dříve.
    • Možnosti připojení: Volitelně zadejte řetězec s oddělovačem možností připojení. Další informace najdete v tématu Použití nastavení mountOptions v Azure Files.
  15. Výběrem možnosti Přidat ukončíte kontextové podokno.

  16. Na stránce Vytvořit a nasadit novou revizi vyberte záložku Kontejner .

  17. Vyberte kontejner, do kterého chcete svazek připojit.

  18. V podokně Upravit kontejner vyberte záložku Přípojné body svazku.

  19. V části Název svazku vyberte svazek, který jste vytvořili dříve.

  20. V cestu připojení zadejte absolutní cestu v kontejneru pro připojení objemu.

  21. Do dílčí cesty (volitelné) zadejte cestu ve svazku, který chcete připojit. Pokud tuto hodnotu nezadáte, připojí se kořenový svazek. Pro více informací viz Subpath.

  22. Výběrem možnosti Uložit uložte změny a ukončete kontextové podokno.

  23. Výběrem možnosti Vytvořit vytvořte novou revizi.

Podcesta

Když připojíte souborový sdílený disk z Azure Files, můžete zadat jak cestu připojení, tak i podcestu.

  • Cesta k připojení: Cesta v kontejneru, kam chcete připojit svazek.
  • Dílčí cesta: Cesta ve svazku, který chcete připojit.

Částečná cesta je volitelná. Pokud nezadáte podcestu, je připojen kořen svazku.

Dílčí cesta je relativní cesta z kořene svazku. Nezačínejte podcestu s /. Pokud zadáte podcestu, která začíná na /, nemusí se vaše aplikace kontejneru spustit. Jedná se například my-volume-folder o platnou dílčí cestu, ale /my-volume-folder není.

Dílčí cesta může odkazovat na složku nebo soubor ve svazku.

  • Pokud dílčí cesta odkazuje na složku, měla by cesta připojení odkazovat na prázdnou složku v kontejneru.

  • Pokud dílčí cesta odkazuje na soubor, měla by cesta připojení odkazovat na soubor, který v kontejneru ještě neexistuje.

    Předpokládejme například, že dílčí cesta je my-volume-folder/my-volume-file.txta přípojná cesta je /my-container-folder/my-container-file.txt. Složka /my-container-folder by již měla existovat v kontejneru, ale zatím by neměla obsahovat soubor my-container-file.txt.

Systém ignoruje koncová lomítka dílčích cest.