Sdílet prostřednictvím


Připojení svazku emptyDir ve službě Azure Container Instances

Zjistěte, jak připojit prázdný svazekDir ke sdílení dat mezi kontejnery ve skupině kontejnerů ve službě Azure Container Instances. Jako dočasné mezipaměti pro kontejnerizované úlohy používejte svazky emptyDir .

Poznámka:

Připojení prázdného svazkuDir je aktuálně omezeno na kontejnery Linuxu. Zatímco pracujeme na přenesení všech funkcí do kontejnerů Windows, aktuální rozdíly v platformě najdete v přehledu.

emptyDir volume

Prázdný svazekDir poskytuje zapisovatelný adresář přístupný pro každý kontejner ve skupině kontejnerů. Kontejnery ve skupině mohou číst a zapisovat stejné soubory ve svazku a lze je připojit pomocí stejných nebo různých cest v každém kontejneru.

V některých příkladech se používá prázdný svazekDir :

  • Pomocné místo
  • Vytváření kontrolních bodů během dlouhotrvajících úloh
  • Ukládání dat načtených kontejnerem sajdkáře a obsluhovaného kontejnerem aplikace

Data v prázdném svazkuDir se uchovávají prostřednictvím chybových ukončení kontejneru. Kontejnery, které se restartují, ale nezaručuje zachování dat ve svazku emptyDir . Pokud zastavíte skupinu kontejnerů, prázdný svazekDir se neuchová.

Maximální velikost svazku Linux emptyDir je 50 GB.

Připojení prázdného svazkuDir

Pokud chcete připojit prázdný svazekDir v instanci kontejneru, můžete nasadit pomocí šablony Azure Resource Manageru, souboru YAML nebo jiných programových metod pro nasazení skupiny kontejnerů.

Nejprve naplňte volumes pole v části skupiny properties kontejnerů v souboru. Dále pro každý kontejner ve skupině kontejnerů, ve které chcete připojit svazek emptyDir , naplňte volumeMounts pole v properties části definice kontejneru.

Například následující šablona Resource Manageru vytvoří skupinu kontejnerů skládající se ze dvou kontejnerů, z nichž každá připojí prázdný svazekDir :

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "variables": {
    "container1name": "aci-tutorial-app",
    "container1image": "mcr.microsoft.com/azuredocs/aci-helloworld:latest",
    "container2name": "aci-tutorial-sidecar",
    "container2image": "mcr.microsoft.com/azuredocs/aci-tutorial-sidecar"
  },
  "resources": [
    {
      "type": "Microsoft.ContainerInstance/containerGroups",
      "apiVersion": "2021-03-01",
      "name": "volume-demo-emptydir",
      "location": "[resourceGroup().location]",
      "properties": {
        "containers": [
          {
            "name": "[variables('container1name')]",
            "properties": {
              "image": "[variables('container1image')]",
              "resources": {
                "requests": {
                  "cpu": 1,
                  "memoryInGb": 1.5
                }
              },
              "ports": [
                {
                  "port": 80
                }
              ],
              "volumeMounts": [
                {
                  "name": "emptydir1",
                  "mountPath": "/mnt/empty"
                }
              ]
            }
          },
          {
            "name": "[variables('container2name')]",
            "properties": {
              "image": "[variables('container2image')]",
              "resources": {
                "requests": {
                  "cpu": 1,
                  "memoryInGb": 1.5
                }
              },
              "volumeMounts": [
                {
                  "name": "emptydir1",
                  "mountPath": "/mnt/empty"
                }
              ]
            }
          }
        ],
        "osType": "Linux",
        "ipAddress": {
          "type": "Public",
          "ports": [
            {
              "protocol": "tcp",
              "port": "80"
            }
          ]
        },
        "volumes": [
          {
            "name": "emptydir1",
            "emptyDir": {}
          }
        ]
      }
    }
  ]
}

Pokud chcete zobrazit příklady nasazení skupiny kontejnerů, přečtěte si téma Nasazení skupiny více kontejnerů pomocí šablony Resource Manageru a nasazení skupiny více kontejnerů pomocí souboru YAML.

Další kroky

Zjistěte, jak připojit jiné typy svazků ve službě Azure Container Instances: