Udostępnij przez


Wdrażanie konstruktora interfejsu API danych w usłudze Azure Container Instances

Diagram obecnej lokalizacji ('Opublikuj') w sekwencji przewodnika wdrażania.

Diagram sekwencji przewodnika wdrażania, w tym tych lokalizacji, w kolejności: Przegląd, Planowanie, Przygotowywanie, Publikowanie, Monitorowanie i Optymalizacja. Lokalizacja "Publikuj" jest obecnie wyróżniona.

Szybko wdróż budowniciela interfejsu API danych na platformie Azure, używając tylko pliku konfiguracji, bez konieczności tworzenia niestandardowego kodu. Ten przewodnik zawiera kroki hostowania obrazu kontenera konstruktora interfejsu API danych z platformy Docker jako kontenera w usłudze Azure Container Instances.

W tym przewodniku przedstawiono kroki tworzenia pliku konfiguracji konstruktora interfejsu API danych, hostowania pliku w usłudze Azure Files, a następnie instalowania pliku w kontenerze w usłudze Azure Container Instances.

Wymagania wstępne

Kompilowanie pliku konfiguracji

Aby rozpocząć, utwórz plik konfiguracji konstruktora interfejsu API danych (DAB) w celu nawiązania połączenia z istniejącą bazą danych. Ten plik jest używany później z kontenerem ostatecznym.

  1. Utwórz pusty katalog na komputerze lokalnym, aby zapisać plik konfiguracji.

  2. Zainicjuj nowy podstawowy plik konfiguracji przy użyciu polecenia dab init. Użyj następujących ustawień co najmniej podczas inicjowania.

    Ustawienia Wartość
    Typ bazy danych Wybierz obsługiwany typ bazy danych.
    Parametry połączenia @env() Użyj funkcji , aby odwołać się do zmiennej środowiskowejDATABASE_CONNECTION_STRING.
    dab init --database-type "<database-type>" --connection-string "@env('DATABASE_CONNECTION_STRING')"
    

    Ważne

    Niektóre typy baz danych będą wymagać dodatkowych ustawień konfiguracji podczas inicjowania.

  3. Dodaj do konfiguracji co najmniej jedną jednostkę bazy danych. dab add Użyj polecenia , aby skonfigurować jednostkę. Skonfiguruj każdą jednostkę, aby zezwolić na wszystkie uprawnienia dla użytkowników anonimowych. Powtarzaj dab add tyle razy, ile chcesz dla jednostek.

    dab add "<entity-name>" --source "<schema>.<table>" --permissions "anonymous:*"
    
  4. Otwórz i przejrzyj zawartość pliku dab-config.json . Ten plik zostanie użyty w dalszej części tego przewodnika.

Konfiguracja hosta w usłudze Azure Files

Następnie prześlij plik konfiguracji do zasobu plików utworzonego w Azure Files. Ten udział plików zostanie ostatecznie zainstalowany w ostatnim kontenerze jako wolumin.

  1. Zaloguj się do witryny Azure Portal (https://portal.azure.com).

  2. Utwórz nową grupę zasobów. Ta grupa zasobów będzie używana do obsługi wszystkich nowych zasobów w tym przewodniku.

    Zrzut ekranu przedstawiający kartę

    Wskazówka

    Zalecamy nadanie grupie zasobów nazwy msdocs-dab-aci. Wszystkie zrzuty ekranu w tym przewodniku używają tej nazwy.

  3. Tworzenie konta usługi Azure Storage. Użyj tych ustawień, aby skonfigurować konto.

    Ustawienia Wartość
    Grupa zasobów Wybierz utworzoną wcześniej grupę zasobów
    Nazwa konta magazynu Wprowadź globalnie unikatową nazwę
    Region Wybieranie regionu platformy Azure
    Wydajność Wybierz Standard
    Redundancja Wybierz magazyn lokalnie nadmiarowy (LRS)
    Włącz dostęp do kluczy kont magazynu Wybierz opcję Włącz

    Zrzut ekranu karty

  4. Przejdź do nowego konta magazynowego w Azure Portal.

  5. Wybierz pozycję Udziały plików w sekcji Magazyn danych w menu zasobów. Następnie wybierz pozycję Udział plików na pasku narzędzi, aby utworzyć nowy udział w koncie magazynowania. Użyj następujących ustawień, aby skonfigurować nowy udział plików.

    Ustawienia Wartość
    Nazwa Wprowadź config
    Warstwa dostępu Wybierz Gorąca
    Włączanie kopii zapasowej Nie wybieraj

    Zrzut ekranu przedstawiający menu zasobów **Udział plików** i opcje paska poleceń w witrynie Azure Portal.

  6. Przekaż dab-config.json i inne wymagane pliki do zasobu. Użyj opcji Przekaż na pasku poleceń, aby otworzyć okno dialogowe Przekazywanie plików . Wybierz oba pliki, a następnie wybierz pozycję Przekaż.

    Zrzut ekranu przedstawiający okno dialogowe **Przekazywanie plików** w witrynie Azure Portal.

  7. Wybierz pozycję Klucze dostępu w sekcji Zabezpieczenia i sieć w menu zasobów. Następnie zapisz wartości nazwy konta magazynu i klucza z tej strony. Te wartości będą używane w dalszej części tego przewodnika.

    Zrzut ekranu przedstawiający stronę

Utwórz bazowe wystąpienie kontenera

Na koniec utwórz kontener na platformie Azure przy użyciu usługi Azure Container Instances. Ten kontener hostuje obraz konstruktora interfejsu API danych z plikiem konfiguracji w celu nawiązania połączenia z bazą danych.

Ważne

Obecnie jedynym sposobem utworzenia wystąpienia kontenera z zamontowanym woluminem jest użycie Azure CLI.

  1. Utwórz zasób usługi Azure Container Instances przy użyciu polecenia az container create. Użyj tych ustawień, aby skonfigurować zasób.

    Ustawienia Wartość
    Grupa zasobów Użyj utworzonej wcześniej grupy zasobów
    Nazwa kontenera Wprowadź globalnie unikatową nazwę
    Region Użyj tego samego regionu co konto magazynu
    Kod SKU Użyj standardu
    Typ obrazu Korzystanie z publicznej wersji
    Obraz Wprowadź mcr.microsoft.com/azure-databases/data-api-builder:latest
    Typ systemu operacyjnego Korzystanie z systemu Linux
    Typ sieci Korzystanie z publicznej wersji
    Porty sieciowe Wprowadź 5000
    Etykieta nazwy DNS Wprowadź globalnie unikatową etykietę
    Zmienne środowiskowe Wprowadź DATABASE_CONNECTION_STRING i parametry połączenia dla bazy danych.
    az container create \
        --resource-group "<resource-group-name>" \
        --name "<unique-container-instance-name>" \
        --image "mcr.microsoft.com/azure-databases/data-api-builder:latest" \
        --location "<region>" \
        --sku "Standard" \
        --os-type "Linux" \
        --ip-address "public" \
        --ports "5000" \
        --dns-name-label "<unique-dns-label>" \
        --environment-variables "DATABASE_CONNECTION_STRING=<database-connection-string>" \
        --azure-file-volume-mount-path "/cfg" \
        --azure-file-volume-account-name "<storage-account-name>" \
        --azure-file-volume-account-key "<storage-account-key>" \
        --azure-file-volume-share-name "config" \
        --command-line "dotnet Azure.DataApiBuilder.Service.dll --ConfigFileName /cfg/dab-config.json"
        --
    

    Wskazówka

    Zalecamy używanie parametrów połączenia, które nie zawierają kluczy autoryzacji. Zamiast tego użyj tożsamości zarządzanych i kontroli dostępu opartej na rolach, aby zarządzać dostępem między bazą danych i hostem. Aby uzyskać więcej informacji, zobacz Usługi platformy Azure korzystające z tożsamości zarządzanych.

  2. Użyj az container show do zapytania pełnej nazwy domeny (FQDN) dla nowego wystąpienia kontenera. Następnie przejdź do witryny internetowej wystąpienia kontenera.

    az container show \
        --resource-group "<resource-group-name>" \
        --name "<unique-container-instance-name>" \
        --query "join('://', ['https', ipAddress.fqdn])" \
        --output "tsv"
    
  3. Zwróć uwagę na odpowiedź wskazującą, że kontener DAB jest uruchomiony, a stan jest w dobrej kondycji.

    {
        "status": "healthy",
        "version": "1.1.7",
        "app-name": "dab_oss_1.1.7"
    }
    

    Uwaga / Notatka

    Numer wersji i nazwa będą się różnić w zależności od bieżącej wersji konstruktora interfejsu API danych. Na tym etapie nie można przejść do żadnych punktów końcowych interfejsu API. Te punkty końcowe będą dostępne po zainstalowaniu pliku konfiguracji języka DAB.

  4. Przejdź do ścieżki /api/swagger aplikacji, która jest obecnie uruchomiona. Użyj Swagger UI, aby wysłać żądanie HTTP GET dla jednej z jednostek.

Uprzątnij zasoby

Jeśli nie potrzebujesz już przykładowej aplikacji lub zasobów, usuń odpowiednie wdrożenie i wszystkie zasoby.

  1. Przejdź do grupy zasobów przy użyciu witryny Azure Portal.

  2. Na pasku poleceń wybierz pozycję Usuń.

Następny krok