Aracılığıyla paylaş


Azure Container Instances'a emptyDir birimi bağlama

Azure Container Instances'taki bir kapsayıcı grubundaki kapsayıcılar arasında veri paylaşmak için emptyDir birimi bağlamayı öğrenin. Kapsayıcılı iş yükleriniz için kısa ömürlü önbellekler olarak emptyDir birimlerini kullanın.

Not

EmptyDir birimi bağlama işlemi şu anda Linux kapsayıcıları ile sınırlıdır. Tüm özellikleri Windows kapsayıcılarına getirmeye çalışırken, genel bakış bölümünde geçerli platform farklarını bulabilirsiniz.

emptyDir birimi

emptyDir birimi, bir kapsayıcı grubundaki her kapsayıcı için erişilebilir yazılabilir bir dizin sağlar. Gruptaki kapsayıcılar birimdeki aynı dosyaları okuyup yazabilir ve her kapsayıcıda aynı veya farklı yollar kullanılarak bağlanabilir.

Bazı örneklerde emptyDir birimi kullanılır:

  • Karalama alanı
  • Uzun süre çalışan görevler sırasında denetim noktası oluşturma
  • Sepet kapsayıcısı tarafından alınan ve uygulama kapsayıcısı tarafından sunulan verileri depolama

EmptyDir birimindeki veriler kapsayıcı kilitlenmeleri aracılığıyla kalıcı hale geliyor. Ancak, yeniden başlatılan kapsayıcıların verileri emptyDir birimde kalıcı hale getirmek için garanti edilmemesi. Bir kapsayıcı grubunu durdurursanız emptyDir birimi kalıcı olmaz.

Linux emptyDir biriminin en büyük boyutu 50 GB'tır.

emptyDir birimini bağlama

Bir kapsayıcı örneğine emptyDir birimi bağlamak için bir Azure Resource Manager şablonu, YAML dosyası veya kapsayıcı grubu dağıtmak için diğer programlı yöntemleri kullanarak dağıtım yapabilirsiniz.

İlk olarak, dosyanın kapsayıcı grubu properties bölümündeki diziyi doldurunvolumes. Ardından, emptyDir birimini bağlamak istediğiniz kapsayıcı grubundaki her kapsayıcı için, kapsayıcı tanımının properties bölümündeki diziyi doldurunvolumeMounts.

Örneğin, aşağıdaki Resource Manager şablonu, her biri emptyDir birimini bağlayan iki kapsayıcıdan oluşan bir kapsayıcı grubu oluşturur:

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

Kapsayıcı grubu dağıtımı örneklerini görmek için bkz . Resource Manager şablonu kullanarak çok kapsayıcılı grup dağıtma ve YAML dosyası kullanarak çok kapsayıcılı grup dağıtma.

Sonraki adımlar

Azure Container Instances'ta diğer birim türlerini bağlamayı öğrenin: