Ćwiczenie — używanie woluminów danych

Ukończone

Domyślnie usługa Azure Container Instances jest bezstanowa. Po awarii lub wyłączeniu kontenera cały jego stan zostanie utracony. Aby zachować stan również wtedy, należy zainstalować wolumin z magazynu zewnętrznego.

Zainstaluj udział plików platformy Azure w wystąpieniu kontenera platformy Azure, aby móc przechowywać dane i uzyskiwać do niego dostęp później.

Tworzenie udziału plików platformy Azure

Utwórz konto magazynu i udział plików. Później możesz udostępnić udział plików wystąpieniu kontenera platformy Azure.

  1. Konto magazynu wymaga unikatowej nazwy. W celach szkoleniowych uruchom następujące polecenie, aby zapisać unikatową nazwę w zmiennej powłoki Bash:

    STORAGE_ACCOUNT_NAME=mystorageaccount$RANDOM
    
  2. Uruchom następujące az storage account create polecenie, aby utworzyć konto magazynu:

    az storage account create \
      --resource-group learn-deploy-aci-rg \
      --name $STORAGE_ACCOUNT_NAME \
      --sku Standard_LRS \
      --location eastus
    
  3. Uruchom następujące polecenie, aby umieścić konto magazynu parametry połączenia w zmiennej środowiskowej o nazwie AZURE_STORAGE_CONNECTION_STRING:

    export AZURE_STORAGE_CONNECTION_STRING=$(az storage account show-connection-string \
      --resource-group learn-deploy-aci-rg \
      --name $STORAGE_ACCOUNT_NAME \
      --output tsv)
    

    AZURE_STORAGE_CONNECTION_STRING to specjalna zmienna środowiskowa, którą rozumie interfejs wiersza polecenia platformy Azure. Część sprawia, że ta zmienna export jest dostępna dla innych poleceń interfejsu wiersza polecenia uruchamianych później.

  4. Uruchom to polecenie, aby utworzyć udział plików o nazwie aci-share-demo na koncie magazynu:

    az storage share create --name aci-share-demo
    

Uzyskiwanie poświadczeń magazynu

Aby zainstalować udział plików platformy Azure jako wolumin w usłudze Azure Container Instances, będziesz potrzebować trzech poniższych wartości:

  • Nazwa konta magazynu
  • Nazwa udziału
  • Klucz dostępu do konta magazynu

Masz już dwie pierwsze wartości. Nazwa konta magazynu jest przechowywana w zmiennej powłoki Bash STORAGE_ACCOUNT_NAME. W poprzednim kroku określono nazwę udziału aci-share-demo. W tym miejscu uzyskasz pozostałą wartość: klucz dostępu do konta magazynu.

  1. Uruchom następujące polecenie, aby uzyskać klucz konta magazynu:

    STORAGE_KEY=$(az storage account keys list \
      --resource-group learn-deploy-aci-rg \
      --account-name $STORAGE_ACCOUNT_NAME \
      --query "[0].value" \
      --output tsv)
    

    Wynik jest przechowywany w zmiennej powłoki Bash o nazwie STORAGE_KEY.

  2. Jako krok opcjonalny możesz wyświetlić klucz magazynu w konsoli.

    echo $STORAGE_KEY
    

Wdrażanie kontenera i instalowanie udziału plików

Aby zainstalować udział plików platformy Azure jako wolumin w kontenerze, określasz udział i punkt instalacji woluminu podczas tworzenia kontenera.

  1. Uruchom to az container create polecenie, aby utworzyć kontener, który instaluje /aci/logs/ się w udziale plików:

    az container create \
      --resource-group learn-deploy-aci-rg \
      --name aci-demo-files \
      --image mcr.microsoft.com/azuredocs/aci-hellofiles \
      --location eastus \
      --ports 80 \
      --ip-address Public \
      --azure-file-volume-account-name $STORAGE_ACCOUNT_NAME \
      --azure-file-volume-account-key $STORAGE_KEY \
      --azure-file-volume-share-name aci-share-demo \
      --azure-file-volume-mount-path /aci/logs/
    
  2. Uruchom polecenie az container show , aby uzyskać publiczny adres IP kontenera:

    az container show \
      --resource-group learn-deploy-aci-rg \
      --name aci-demo-files \
      --query ipAddress.ip \
      --output tsv
    
  3. W przeglądarce przejdź do adresu IP kontenera. Zostanie wyświetlona ta strona:

    Screenshot of the Azure Container Instances file share demo running in a browser.

  4. Wprowadź tekst w formularzu i wybierz pozycję Prześlij. Ta akcja tworzy plik zawierający tekst wprowadzony w udziale plików platformy Azure.

  5. Uruchom to az storage file list polecenie, aby wyświetlić pliki zawarte w udziale plików:

    az storage file list -s aci-share-demo -o table
    
  6. Uruchom polecenie az storage file download w celu pobrania pliku do sesji usługi Cloud Shell. Zastąp <nazwę pliku> jednym z plików, które zostały wyświetlone w poprzednim kroku:

    az storage file download -s aci-share-demo -p <filename>
    
  7. Uruchom polecenie cat, aby wyświetlić zawartość pliku.

    cat <filename>
    

Pamiętaj, że dane będą utrzymywane w okresie istnienia kontenera. Możesz zainstalować udział plików w innych wystąpieniach kontenera, aby udostępnić im te dane.