Dela via


Montera en emptyDir-volym i Azure Container Instances

Lär dig hur du monterar en emptyDir-volym för att dela data mellan containrarna i en containergrupp i Azure Container Instances. Använd emptyDir-volymer som tillfälliga cacheminnen för dina containerbaserade arbetsbelastningar.

Kommentar

Montering av en emptyDir-volym är för närvarande begränsad till Linux-containrar. Medan vi arbetar med att ta alla funktioner till Windows-containrar kan du hitta aktuella plattformsskillnader i översikten.

emptyDir-volym

EmptyDir-volymen tillhandahåller en skrivbar katalog som är tillgänglig för varje container i en containergrupp. Containrar i gruppen kan läsa och skriva samma filer i volymen, och de kan monteras med samma eller olika sökvägar i varje container.

Ett exempel används för en tomDir-volym :

  • Scratch space (Borttagningsutrymme)
  • Kontrollpunkter under långvariga uppgifter
  • Lagra data som hämtats av en sidovagnscontainer och hanteras av en programcontainer

Data i en tomDir-volym sparas via containerkrascher. Containrar som startas om är dock inte garanterade att spara data i en tomDir-volym . Om du stoppar en containergrupp sparas inte emptyDir-volymen .

Den maximala storleken på en Tom Linux-volym är 50 GB.

Montera en emptyDir-volym

Om du vill montera en emptyDir-volym i en containerinstans kan du distribuera med hjälp av en Azure Resource Manager-mall, en YAML-fil eller andra programmatiska metoder för att distribuera en containergrupp.

Fyll först i matrisen volumes i avsnittet containergrupp properties i filen. För varje container i containergruppen där du vill montera emptyDir-volymen fyller du sedan i matrisen volumeMounts properties i avsnittet i containerdefinitionen.

Följande Resource Manager-mall skapar till exempel en containergrupp som består av två containrar, som var och en monterar den tommaDir-volymen :

{
  "$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": {}
          }
        ]
      }
    }
  ]
}

Exempel på distribution av containergrupper finns i Distribuera en grupp med flera containrar med hjälp av en Resource Manager-mall och Distribuera en grupp med flera containrar med hjälp av en YAML-fil.

Nästa steg

Lär dig hur du monterar andra volymtyper i Azure Container Instances: